Python:使用parent';启动另一个Python程序;s的python版本

Python:使用parent';启动另一个Python程序;s的python版本,python,subprocess,Python,Subprocess,我有两个python程序在运行——父程序和子程序。在我的系统中,我有两个运行python的版本-2.7和3.3。有时我会使用2.7来运行程序,有时我会使用3.3。我将使用以下命令来运行 ./parent.py (default python27) python33 parent.py 父程序如何调用子程序并使用父程序的python版本运行子程序 事先谢谢虽然你的例子不好,但我认为你想要的是 那没有多大意义。您必须非常小心地编写一个(或两个)同时在Python2和Python3上运行的程序,因为

我有两个python程序在运行——父程序和子程序。在我的系统中,我有两个运行python的版本-2.7和3.3。有时我会使用2.7来运行程序,有时我会使用3.3。我将使用以下命令来运行

./parent.py (default python27)
python33 parent.py
父程序如何调用子程序并使用父程序的python版本运行子程序


事先谢谢

虽然你的例子不好,但我认为你想要的是


那没有多大意义。您必须非常小心地编写一个(或两个)同时在Python2和Python3上运行的程序,因为Python3进行了向后不兼容的更改。实际上,我的代码可以同时支持python27和python33,因为我只使用了一些基本函数。因为我需要测试整个系统的兼容性,所以我需要在python27和python33下运行这两个程序。因此,我有一个问题,即运行与父级相同版本的子级。@BrenBarn:对Python 2和Python 3使用相同的源代码是一个有效的选择,即使是像django这样的非平凡代码库也可以。非常感谢。sys.executable是我需要的。Thanksit不清楚为什么在这里使用字符串格式。如果
exe
被用作
子流程
函数的参数;列表
[sys.executable,“manage.py”,“celeryd”]
更方便、更安全。嘿,J.F.你是对的,我只是想举个例子。我对其进行了更新,以反映一个更清晰的示例。
subprocess.call([sys.executable, "manage.py", "celeryd"])