问题描述
我正在尝试制作一个程序,一次打印一个字母,但每个字母之间都有一个停顿。我发现了一个名为sleep的函数,应该可以帮助您。我为此使用了sleep函数,但是它首先等待,然后打印文本,而不是我想要的文本。这是我的代码:
from time import sleep
firstline = "Hello!"
for i in range(len(firstline)):
print(firstline[i],end = "")
sleep(1)
它应该打印Hello的每个字母!在字母之间停顿1秒。但是它只等待六秒钟,然后立即打印所有内容。我是python的新手,因此,如果您在我的代码中发现错误,请告诉我。谢谢。
解决方法
标准输出流被缓冲并在换行符上刷新。如果不输出换行符,则需要进行显式刷新。
还应考虑每当看到for x in range(len(y)):
就是所需要的for x in y:
模式时。
from time import sleep
firstline = "Hello!"
for letter in firstline:
print(letter,end = "",flush=True)
sleep(1)