如果我用 python 2.7 编写程序,并且想使用另一个 python (2.6) 运行另一个脚本文件,我该怎么做?
编辑:我这样做是因为我需要 Django (安装在 python 2.7 中)并且我需要一些仅适用于 python 2.6 的程序...
EDIT2:所以我编写了简单的脚本,它将在 python 2.6 中执行,我将在 python 2.7 中得到结果
您有多种选择,但最通用的概念是用于os.system执行脚本。
os.system('python2.6 myscript.py')
Run Code Online (Sandbox Code Playgroud)
os.system('myscript.py')
Run Code Online (Sandbox Code Playgroud)
为此,您的脚本必须将第一行设置为
#!/usr/bin/env python2.6
Run Code Online (Sandbox Code Playgroud)
并且您的python2.6可执行文件需要位于您的PATH.
subprocess.Popen('myscript.py', subprocess.PIPE) #relying on shebang
subprocess.Popen(['/usr/bin/env', 'python2.6', 'myscript.py'], subprocess.PIPE) #manual interpreter selection
Run Code Online (Sandbox Code Playgroud)
请参阅http://docs.python.org/library/subprocess.html#subprocess.Popen