Python: 是否可以让 'print' 默认刷新?
Python: Is it possible to make 'print' flush by default?
Python3中的print
函数可能会收到一个布尔值是否立即刷新:
print("foobar", flush=True)
我希望 print
函数默认刷新它打印的所有内容,这可能吗?解决方法、临时设置等等。
您可以 运行 Python 在非缓冲模式下使用:
python -u
或者设置环境变量
PYTHONUNBUFFERED=TRUE
对我来说,这看起来像是 functools.partial 的任务,但我不确定它是否适用于这种情况,所以请您尝试以下操作:在文件开头添加
import functools
print = functools.partial(print, flush=True)
并测试它是否符合您的要求?
Python3中的print
函数可能会收到一个布尔值是否立即刷新:
print("foobar", flush=True)
我希望 print
函数默认刷新它打印的所有内容,这可能吗?解决方法、临时设置等等。
您可以 运行 Python 在非缓冲模式下使用:
python -u
或者设置环境变量
PYTHONUNBUFFERED=TRUE
对我来说,这看起来像是 functools.partial 的任务,但我不确定它是否适用于这种情况,所以请您尝试以下操作:在文件开头添加
import functools
print = functools.partial(print, flush=True)
并测试它是否符合您的要求?