【发布时间】:2015-08-26 18:04:20
【问题描述】:
import time
def textinput(txt,waittime=0.04):
end = len(txt)
letters = 0
while end != letters:
print(txt[letters], end = '')
letters += 1
time.sleep(waittime)
textinput('Hello there!')
这基本上是我逐个字母写单词的功能,它在测试时在 IDLE 上完美运行,但是,当我正常运行它(并打开命令提示符)时,我试图写的内容保持不可见,然后突然立即显示单词。是我输入错误,还是命令提示符的问题?我使用的是 Windows 10。
【问题讨论】:
-
如果您的程序将字符塞入标准输出缓冲区会发生什么。在某一时刻,操作系统决定刷新缓冲区,您会立即看到所有字符。要一次获得单个字符效果,您必须在写入每个字符后显式刷新缓冲区,如@PadriacCunningham 回答中所示。
标签: python python-3.x