python - 如何分发独立的 python 应用程序?

标签 python

我想将我的 Python 应用程序分发给同事使用。该应用程序将在 Linux 系统上运行,但用户没有管理员权限,因此无法安装我的应用程序的模块依赖项。我希望用户能够解压缩我的应用程序,然后运行我的 main.py 脚本。运行另一个一次性“安装”类型的脚本是可以的,但除此之外别无他法。

PyInstaller接近我想要的。除了我还想分发我的应用程序的源代码。所以应用程序应该是独立的和自包含的(有或没有 python 解释器都可以,最好有),但用户应该能够对代码进行小的更改并重新运行应用程序。我理想的解决方案是为我的所有应用程序模块依赖项创建某种压缩/编译存档,并将其与我的应用程序一起分发。它不一定是所有依赖项,但至少是非标准包。然后,应用程序将从该存档而不是用户的 PYTHONPATH 导入模块。

我试过 virtualenv,但是让用户获取激活脚本有点过分了。我一直在研究许多其他解决方案,但找不到适合我的解决方案。

最佳答案

为什么不创建一个包含您要使用的解释器的目录,添加任何模块等。然后放入一个 bash 脚本,比如调用程序的 run.sh。它可以用你的 python 文件、参数等启动你选择的解释器。

任何源文件都可以保持这种方式并在原地进行编辑。你可以 tar 并分发整个目录,或者放入类似 git 的东西。

关于python - 如何分发独立的 python 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18675143/

相关文章:

python - 编辑字典。在 json 文件中

javascript - Python 中的 Pubnub 存在功能 (GAE)

python - 如何让 Python jsonpickle 递归工作?

python - 使用 Flask,如何修改所有输出的 Cache-Control header ?

python - 运行使用远程 Webdriver 并连接到 selenium hub 和节点的测试失败

python - 使用 WN-Affect 检测字符串的情绪/心情

python - 无法在 python 中为终端命令运行 '>'

python - Django:数据导入脚本的标准位置/约定?

Python:记录有效,但只有一次,然后我必须重新启动脚本

python - 是否有 Python 的可视化分析器?