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