我安装了2.7和3.0版本的Python解释器(在我的Ubuntu 32系统上),但是一个特定的脚本使用3.0。
使用
#!/usr/bin/python3 -B
当程序与python myprogram.py
一起运行时,将无效。
我还需要一个可以在Windows中运行的解决方案,我也安装了两个python版本。
如何让脚本只运行正确的python版本?
答案 0 :(得分:4)
请使用virtualenv,这样可以轻松实现孤立的Python环境。
答案 1 :(得分:1)
python = Python to use. # This has to be the absolute path to Python executable
os.execl(python, python, * sys.argv)
这样你可以使用你想要使用的python重启脚本。不太时尚。
答案 2 :(得分:1)
我不知道为什么你不能用python3 foo.py
启动程序,但是有可能让python2程序像python3一样重新启动它。
import sys
if sys.version_info.major != 3:
import os
# replace this process with a python3 process
os.execlp("python3", "python3", *sys.argv)
这是一个糟糕的解决方案,因为现在你的python3程序不能使用任何无效的python2语法
答案 3 :(得分:0)
请查看The wrong python interpreter is called
您必须根据安装所需Python版本和系统变量的位置选择正确的解释器。