在程序中使用python(如python -u)中的无缓冲stdout [重复]

在程序中使用python(如python -u)中的无缓冲stdout [重复],第1张

在程序中使用python(如python -u)中的无缓冲stdout [重复]

我能想到的最好的方法是:

>>> import os>>> import sys>>> unbuffered = os.fdopen(sys.stdout.fileno(), 'w', 0)>>> unbuffered.write('test')test>>> >>> sys.stdout = unbuffered>>> print 'test'test

在GNU / Linux上测试。似乎它也应该在Windows上工作。如果我知道如何重新打开sys.stdout,它将容易得多:

sys.stdout = open('???', 'w', 0)

参考:
http :
//docs.python.org/library/stdtypes.html#file-objectshttp://docs.python.org/library/functions.html#openhttp://docs.python.org/library/ os.html#file-object-
creation

[编辑]

请注意,覆盖sys.stdout可能会更好。



欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5668207.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存