使用time.sleep功能慢速打印

时间:2017-10-13 08:59:48

标签: python python-3.x stdout sleep

我想使用python3在同一行的终端上缓慢打印字符串的字符。我使用了这段代码。

for i in "Hello":
    print(i,end='')
    time.sleep(0.2)

此代码等待0.2 * 5(" Hello" len)并立即打印所有字符。当我使用sys.stdout.write()函数而不是print函数时,它会打印出来字符逐行而不是相同的行。如何在延迟时在同一行上打印字符?

1 个答案:

答案 0 :(得分:3)

import sys
import time

for c in "Hello":
    sys.stdout.write(c)
    sys.stdout.flush() # <- add this 
    time.sleep(0.2)

或者使用python 3 flush函数中的print参数

print(c, end='', flush=True)