您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

python – 在运行时获取进程的输出

5b51 2022/1/14 8:23:29 python 字数 1511 阅读 603 来源 www.jb51.cc/python

我使用 python脚本使用subprocess.Popen运行进程,同时将输出存储在文本文件中,并在控制台上打印.这是我的代码: result = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE) for line in result.stdout.readlines(): #read and store result in lo

概述

result = subprocess.Popen(cmd,shell=True,stdout=subprocess.PIPE)
for line in result.stdout.readlines(): #read and store result in log file
    openfile.write("%s\n" %line)
    print("%s" %line)

上面的代码工作正常,但它的作用是首先完成该过程并将输出存储在结果变量中.之后for循环存储输出并打印它.

但我希望在运行时输出(因为我的过程可能需要数小时才能完成,所有这些时间都没有得到任何输出).

那么有没有任何其他函数可以动态地(在运行时)给我输出,意味着只要进程给出第一行,就应该打印出来.

for line in result.stdout:
    print line

总结

以上是编程之家为你收集整理的python – 在运行时获取进程的输出全部内容,希望文章能够帮你解决python – 在运行时获取进程的输出所遇到的程序开发问题。


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶