python - 单个可执行文件中的 Virtualenv

标签 python linux virtualenv executable

我当前有一个可执行文件,它在 zip 文件内运行 Python 代码,如下所示:https://blogs.gnome.org/jamesh/2012/05/21/python-zip-files/

这样做的好处是我发布了一个包含该应用程序的文件。问题出现在依赖关系中。我尝试在自定义位置使用 pip 安装文件,当我将它们嵌入到 zip 中时,我总是遇到导入问题或最终取决于主机包的问题。

然后我开始研究虚拟环境作为确保包依赖性的一种方法。然而,目标计算机上的典型工作流程似乎是获取激活脚本并在 virtualenv 中运行代码。我想做的是拥有一个包含 Python 脚本及其所有依赖项的文件,并且用户只需执行该文件即可。鉴于 Python 解释器实际上是与 virtualenv 一起打包的,这可能吗?是否可以从 zip 文件中调用 Python 解释器?从 Python 的角度来看,推荐的方法是什么?

最佳答案

您可以创建一个 bash 脚本来创建虚拟环境并运行 python 脚本。

!#/bin/bash
virtualenv .venv
.venv/bin/pip install <python packages>
.venv/bin/python script

关于python - 单个可执行文件中的 Virtualenv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39967250/

相关文章:

Python - 使用 'import signal' 处理 CTRL+D

python - 为什么 self 不会自动传递给实例化后在对象上设置的方法?

java - 用 Java 聚合来自远程 Linux 服务器的日志文件?

python - django.core.exceptions.AppRegistryNotReady : Apps aren't loaded yet launching debug on pycharm

python - 重复事件的延迟相当于什么?

python - Flask 不使用 curl auth

php - 在 php 中使用 exec 命令不更改目录

linux - 如何比较 bash 中的两个配对列表?

python - 如何加速已缓存的 pip 安装?

python - 这个答案中的 "revirtual"是什么?