我显示题词“按任意键...”。按下一个键后,我希望这个铭文消失。翻遍论坛,我没有找到一个正常和充分的答案,所以我想在一个单独的问题上寻求帮助。为避免任何问题,以下是具体细节:
- 回车与在控制台 pyCharm 中更新打印输出的示例不太匹配。如何更改输出行?10、更新到9等之后呢?. 我需要另一个更具体的例子,Pashok 在下面的答案中给了我。
- 目前尚不清楚为什么这个链接在没有暂停 python 程序的情况下被给予键盘输入。无法应用这个。
- 从这里,Python 检查 sys.stdin 中的数据,我只能拉出 msvcrt 模块本身。
- 并行执行两个 python 函数——我还没有在 Python 中使用多线程。这对我来说太早了)))
- 第一个链接Creating a typewriter animation with a reverse process in python很有用,但后来我无法将动画与插入符号结合起来。因为 这是我的事,我想你可以没有它。实际上,我没有在新问题中描述它。
我的文字游戏代码在两个文件中工作:一个是功能性的,第二个是执行性的。这是一个显示不是字符语音的评论文本的功能。
def cnt(text, centers='center'):
if centers == "left":
print('{:<80}'.format(text), end='')
elif centers == "right":
print('{:>80}'.format(text), end='')
elif centers == "center":
print('{:^80}'.format(text), end='')
sys.stdout.flush()
sys.stdout.write('Нажмите Enter для продолжения...\r')
while not msvcrt.kbhit():
pass
sys.stdout.write(' \r')
input()
您可以在按下按钮后清除控制台。
要在 Windows 上使用任何键,您可以
msvcrt.getch()使用:如果环境支持
\b转义序列,这会通过在其上打印空格来擦除文本。请参阅PyCharm 的 itertools.cycle() 循环使用 \b not working。请注意,它用于不打印第一行的
'\b' * len(text)情况。\rtext另外,该行不能删除;只能更改。然后如果你想覆盖你的最后一行,你需要添加 \r (返回字符)和 end="" 这样你就不会转到下一行。让我们这么说吧。
当然,你也可以试试别的。例如像这样: