python - 运行脚本时自动加载 virtualenv

标签 python virtualenv

我有一个需要来自 virtualenv 的依赖项的 python 脚本。我想知道是否有某种方法可以将它添加到我的路径并让它自动启动它的 virtualenv,运行然后返回到系统的 python。

我尝试过使用 autoenv 和 .env 但这似乎并不完全符合我的要求。我还考虑过将 shabang 更改为指向 virtualenv 路径,但这似乎很脆弱。

最佳答案

有两种方法可以做到这一点:

  1. 把虚拟环境python的名字放到脚本的第一行。像这样

    #!/your/virtual/env/path/bin/python

  2. 将虚拟环境目录添加到 sys.path。请注意,您需要导入 sys 库。像这样

    导入系统

    sys.path.append('/path/to/virtual/env/lib')

如果您选择第二个选项,您可能需要向 sys.path(站点等)添加多个路径。获得它的最好方法是运行你的虚拟环境 python 解释器并找出 sys.path 值。像这样:

/your/virtual/env/bin/python

Python blah blah blah

> import sys
> print sys.path
[ 'blah', 'blah' , 'blah' ]

将 sys.path 的值复制到上面的代码段中。

关于python - 运行脚本时自动加载 virtualenv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23678993/

相关文章:

python-3.x - 如何在virtualenv中安装gcc

python动态调用类

python - 评估复杂的条件Python

python - 对数据框进行分组并按组计算归一化标准差?

python - 将 bash 脚本拆分为单独的命令并一一运行它们

node.js - nodeenv - 在 vi​​rtualenv 内部但安装到全局 Node 包

python - 如何让buildout给virtualenv加蛋

Python/MariaDB : Converting . csv 数据到数据框并导出到数据库

python - virtualenv 不能在 Windows cygwin 上运行

python - xmlsec 的构建轮失败 - mac