这是在带有Service Pack 2的Windows Vista Home 32b上运行的 我正在Mac和Linux上积极测试它
我有一个python脚本[A]使用子进程来运行另一个python脚本[B]
process = subprocess.Popen(action, stdin=subprocess.PIPE, stdout=subprocess.PIPE,
bufsize=-1)
out = process.stdout.readline()
print out
我用[A]来运行[B]
[B]来自命令行,因此可以是任何脚本
当[B]是以下python脚本
时#file = 'bufftest.py"
msg = "X"
x = 1024
y = 1024
z = 1
while (z < y):
print msg * x
z = z + 1
从命令行运行,从[A]运行,它产生所有输出
当[B]是我没有写的程序时,我无法显示代码, 在命令行运行它产生十五行输出 但是,从[A]运行时,它只生成第一行
程序我没有像这样写
打印输出sys.stdout.write("Line01")
# 02-14
sys.stdout.write("Line15")
它最初使用print,sys,stdout.write()打印输出 我解决了sys.stdoutput.flush()以尝试解决此问题。
谢谢。