2024-09-30 22:15:58 发布
网友
我正在运行以下代码(称之为批处理.py)在
for config in keystoneConfig: cmdlist = generate_cmd_list(config) print ' '.join(cmdlist) subprocess.call(cmdlist)
以及重定向批处理.py到另一个文件。i、 e
./batch.py > output.txt
但是我意识到subprocess.call()的所有输出都在print语句之前。为什么输出不同步?在
subprocess.call()
print
Python正在对自己的输出进行块缓冲,而不是在subprocess.call()之前刷新它,因为您将其输出重定向到文件而不是控制台;您需要强制行缓冲或禁用缓冲,或者在子进程调用之前手动刷新。在
Python正在对自己的输出进行块缓冲,而不是在
subprocess.call()
之前刷新它,因为您将其输出重定向到文件而不是控制台;您需要强制行缓冲或禁用缓冲,或者在子进程调用之前手动刷新。在相关问题 更多 >
编程相关推荐