如何在不阻塞原始程序的情况下运行另一个Python程序

57

Python中可以使用什么命令来运行另一个Python程序?

该命令不应等待子进程终止。相反,它应该继续进行。它也不需要记住其子进程。

2个回答

33

使用subprocess

import subprocess

#code
prog = subprocess.Popen(['python', filename, args])
#more code

9
如果其他的Python程序可以被导入,并且你需要的功能可以通过函数调用,那么最好使用multiprocessing而不是subprocess,因为参数可以作为Python对象传递,而不是通过字符串传递:
import somescript
import multiprocessing as mp

proc = mp.Process(target=somescript.main, args=...)
proc.start()

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接