最佳答案
我正在寻找一种方法来从 python 脚本运行一个外部进程,并在执行期间打印它的 stdout 消息。
下面的代码可以工作,但是在运行时没有打印标准输出:
Write (nextline) TypeError: 必须是 str,而不是字节
p = subprocess.Popen(["demo.exe"],stdout = subprocess.PIPE, stderr= subprocess.PIPE)
# Poll process for new output until finished
while True:
nextline = p.stdout.readline()
if nextline == '' and p.poll() != None:
break
sys.stdout.write(nextline)
sys.stdout.flush()
output = p.communicate()[0]
exitCode = p.returncode
我使用的是 python3.3.2