在Python中为字符串创建打字机效果动画

就像在电影和游戏中一样,位置的位置会显示在屏幕上,就像它是实时输入的一样。我想做一个关于用python逃离迷宫的游戏。在游戏开始时,它提供了游戏的背景信息:

line_1 = "You have woken up in a mysterious maze"

line_2 = "The building has 5 levels"

line_3 = "Scans show that the floors increase in size as you go down"

在变量下,我试图为每一行做一个for循环,如下所示:

from time import sleep

for x in line_1:

print (x)

sleep(0.1)

唯一的问题是每行打印一个字母。时机还可以,但是我怎样才能将它排成一行呢?

回答:

因为您用python 3标记了问题,所以我将提供python 3解决方案:

  1. 将打印的结束字符更改为空字符串: print(..., end='')
  2. 添加sys.stdout.flush()以使其立即打印(因为输出已缓冲)

最终代码:

from time import sleep

import sys

for x in line_1:

print(x, end='')

sys.stdout.flush()

sleep(0.1)


使其随机也非常简单。

  1. 添加此导入:

    from random import uniform

  2. 将您的sleep呼叫更改为以下内容:

    sleep(uniform(0, 0.3))  # random sleep from 0 to 0.3 seconds

以上是 在Python中为字符串创建打字机效果动画 的全部内容, 来源链接: utcz.com/qa/406764.html

回到顶部