我如何在 main.py 模块中(大概)告诉 Python 使用哪个解释器?我的意思是:如果我想要一个特定的脚本使用 Python 版本 3 来解释整个程序,我该怎么做?
奖励:这将如何影响 virtualenv?我是否认为如果我为我的程序创建一个 virtualenv 然后告诉它使用不同版本的 Python,那么我可能会遇到一些冲突?
原文由 jesuis 发布,翻译遵循 CC BY-SA 4.0 许可协议
我如何在 main.py 模块中(大概)告诉 Python 使用哪个解释器?我的意思是:如果我想要一个特定的脚本使用 Python 版本 3 来解释整个程序,我该怎么做?
奖励:这将如何影响 virtualenv?我是否认为如果我为我的程序创建一个 virtualenv 然后告诉它使用不同版本的 Python,那么我可能会遇到一些冲突?
原文由 jesuis 发布,翻译遵循 CC BY-SA 4.0 许可协议
也许不完全是你问的,但我发现把它放在我程序的开头很有用:
import sys
if sys.version_info[0] < 3:
raise Exception("Python 3 or a more recent version is required.")
原文由 Gravity Grave 发布,翻译遵循 CC BY-SA 3.0 许可协议
2 回答5.2k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
4 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
2 回答884 阅读✓ 已解决
1 回答1.8k 阅读✓ 已解决
您可以在脚本顶部添加一个 shebang 行:
但这仅在执行时
./my_program.py
。如果您执行为
python my_program.py
,那么将使用which python
返回的任何 Python 版本。在回复:到 virtualenv 使用:
virtualenv -p /usr/bin/python3.2
或任何设置它以使用该 Python 可执行文件。