Skip to main content
 首页 » 编程设计

python之在 Python 脚本中调用系统的 Python 或 virtualenv 的 Python

2025年05月04日17rubylouvre

假设您编写了一个 Python shell 脚本。它可能会以这样的方式开始:

#!/usr/bin/python 

问题是,如果您经常使用 virtualenv,那么这个调用就是完全错误的。你实际上希望这个脚本调用 virtualenv 的 python 二进制文件,如果它在这个环境中,否则 /usr/bin/python/。就像您的 shell 会决定的那样,当您将 python 编写为 shell 命令时。

您将如何编写 #! 行来满足此要求?

请您参考如下方法:

改用#!/usr/bin/env python。

env command在当前 PATH 中查找二进制文件;激活你的虚拟环境会将你的 virtualenv bin/ 目录添加到路径中,env 会在那里找到你的 python 二进制文件而不是全局 python。