为什么相同的代码工作方式不同?

问题描述 投票:2回答:1

嗯,我已经读过stdout是行缓冲的。但是代码在Pydroid 3(不知道确切版本)和Python 3.8.3中的工作方式不同。

import time
print('Hello', end = '')
time.sleep(5)
print('World')

在Pydroid 3中,至少在5秒后(至少在之后)打印Hello和World,而在Python 3.8.3中,首先打印Hello,在5秒后打印World。

为什么代码工作方式不同?

python time sleep
1个回答
4
投票

这可能不是Python版本问题,而是其他终端问题。

[某些终端(或更准确地说,文件/流,包括stdout)仅在换行符之后刷新(第一个print不具有换行符,而其他终端在每次写入后都可以刷新。

要强制冲洗,您可以使用flush=True as a param to print,请尝试以下操作:

flush=True
© www.soinside.com 2019 - 2024. All rights reserved.