为什么我的 python 睡眠功能不能正常工作?

Why is my python sleep function not working correctly?

我正在尝试制作一个程序,一次打印一个字母,但在每个字母之间有一个停顿。我发现了一个名为 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)