3
是否可以更改Python将内容刷新到控制台的速率?我知道可以将flush = True
添加到打印命令(至少在最新版本的Python 3中)以确保打印内容,但是,是否存在可以更改的全局设置,以便更频繁地将内容提交到屏幕,或者经过一段时间后。 (本质上,我希望更快地刷新内容,或者至少定期刷新内容,但不是每个打印语句都会减慢代码的速度)。更改python打印刷新率
是否可以更改Python将内容刷新到控制台的速率?我知道可以将flush = True
添加到打印命令(至少在最新版本的Python 3中)以确保打印内容,但是,是否存在可以更改的全局设置,以便更频繁地将内容提交到屏幕,或者经过一段时间后。 (本质上,我希望更快地刷新内容,或者至少定期刷新内容,但不是每个打印语句都会减慢代码的速度)。更改python打印刷新率
你可以做这样的事情的玩具例子:
import time
print_interval = 1 # 1 second
last_print_time = time.time()
for i in range(100):
time.sleep(0.1) # An arbitrary time-consuming task
now = time.time()
if now - last_print_time >= print_interval:
print('something', flush=True)
last_print_time = now
else:
print('somethine else', flush=False)
覆盖'print'功能,并添加计数器,内置调用'print'带或不带'flush'取决于计数器当前值? –
有'-u'选项,但这将使它全部无缓冲,所以可能不是你想要的,除此之外可能类似@tobias_k建议但不知道是否值得... – user3012759
也你可能想考虑不同/更快终端,因为这可能是比Python更大的罪魁祸首 – user3012759