这个问题已经有一个答案在这里:

我试图这两种方法:

os.system("python test.py")

subprocess.Popen("python test.py", shell=True)

这两种方法需要等到test.py 完成这块主要过程。我知道"必须被显"可以做的工作。是否有一个蟒蛇的方式启动test.py 或任何其他壳脚本,并把它运行的背景是什么?

假设test.py 是这样的:

for i in range(0, 1000000):
    print i

这两个操作系统。system()或子流程.Popen()将框主要程序,直到1000000线的输出显示。什么我想要的是我们test.py 静默运行并显示主要的计划产出只。主程序的可能quie的话test.py 仍在运行。

有帮助吗?

解决方案

subprocess.Popen(["python", "test.py"]) 应该工作的.

注意,工作可能仍然死的时候你的主要剧本出口。在这种情况下,尝试 subprocess.Popen(["nohup", "python", "test.py"])

其他提示

os.spawnlp(os.P_NOWAIT, "path_to_test.py", "test.py")
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top