子进程的实时输出
使用Python的subprocess模块执行命令行程序时,开发人员经常会遇到缓冲输出的问题。对于需要逐行处理的任务来说,这可能会出现问题。
要解决此问题,用户可以考虑以下方法:
while True: line = p.stdout.readline() if not line: break # No more output, exit loop # Process the current line as needed...
此方法允许实时输出处理,而不会遇到缓冲问题。尽管最初尝试在 p.stdout: 和 bufsize 设置中使用 for line,但这种方法已被证明可以有效地及时捕获输出。
以上是如何在 Python 中获取子进程的实时输出?的详细内容。更多信息请关注PHP中文网其他相关文章!