我需要生成一个运行子脚本的单独python进程。
例如:
main.py运行并将一些输出打印到控制台。然后它产生sub.py,开始一个新进程。一旦main.py生成了sub.py,它应该在sub.py继续运行时终止。
谢谢。
编辑:
当我运行main.py时,它打印'main.py',但没有其他内容,sub.py也没有启动。
main.py
print "main.py"
import subprocess as sp
process=sp.Popen('sub.py', shell=True, stdout=sp.PIPE, stderr=sp.PIPE)
out, err = process.communicate(exexfile('sub.py')) # The output and error streams
raw_input("Press any key to end.")
sub.py
print "sub.py"
raw_input("Press any key to end.")
答案 0 :(得分:1)
直截了当的方法:
execfile('main.py')
提供对输入和输出的细粒度控制,可以在后台运行进程:
import subprocess as sp
process=sp.Popen('other_file.py', shell=True, stdout=sp.PIPE, stderr=sp.PIPE)
out, err = process.communicate() # The output and error streams.