繁体   English   中英

如何打包一个接受命令行参数并且还具有依赖关系的 Python 脚本?

[英]How do I package a single python script which takes command line arguments and also has dependencies?

我有一个 Python 文件,它应该在命令期间接收一堆输入。

例如: python script.py "string_1" "string_2"

我还有一堆依赖项,包括 pandas、datetime 甚至 Python3。

我想以任何人都可以安装包和依赖项的方式打包所有这些代码(在一个目录中),然后只需调用脚本/模块:以上述方式。 无需真正进入 Python 解释器。

我尝试使用python-packaging资源,但是我需要进入解释器,对吗?

我今天找到了一篇很好的文章,很好地解释了这个过程: https : //medium.com/dreamcatcher-its-blog/making-an-stand-alone-executable-from-a-python-script-using-pyinstaller-d1df9170e263

pyinstaller --onefile <script.py>是 tl;dr 在 linux 上。 在 Windows 上,您还需要py32exe

如果您可以依赖已经存在的 python 基本安装。

那么值得看看 Python3.5 中引入的 Python 的 zipapp 模块https://docs.python.org/3/library/zipapp.html#creating-standalone-applications-with-zipapp有关背景信息 PEP441 https://www. python.org/dev/peps/pep-0441/

还有一个名为 Shiv 的项目,它为 python3.5 中捆绑的 zipapp 模块添加了一些额外的功能

https://shiv.readthedocs.io/en/latest/

看看 pex ( https://pex.readthedocs.io/en/stable/ )。 它将您的 Python 脚本、文件、依赖项等打包到一个可执行文件中。 您仍然需要安装 python 解释器,但它包括其他所有内容。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM