慢慢地打印每件事(模拟打字)

printing every thing slowly (Simulate typing)

[printing slowly (Simulate typing)

我从上面的 link 中得到了答案,但只有当您在调用函数时将字符串作为 参数 时才有效。

我希望每次使用 print() 时代码打印缓慢。

可能吗?

不建议更改 print() 的默认行为,引入此行为只是为了轻松移植 Python 2 个程序。此外,在没有特殊参数的情况下重载打印函数将使 print() 的默认功能变得毫无意义。

创建另一个函数,为打印添加延迟。还要记住,您不能使用 print(),因为它会附加一个新行。你必须 sys.stdout.write()

所以基本函数如下所示:

def typrint(x):
    for i in len(x):
        sys.stdout.write(x[i])
        sleep(0.05)
    sys.stdout.write(“\n”)

检查此 article 以了解为什么 Python 将 print() 更新为函数

是的,您可以使用下面的标准输出版本来完成。

import sys, time

def print(s):
    for letter in s:
        sys.stdout.write(letter)
        time.sleep(.1)

print("Foo")

是的,你可以这样做,但是,我认为这不是一个好主意:

import time
def dprint(string):
   for letter in string:
        __builtins__.print(letter,end = '', flush=True)
        time.sleep(.1)
   __builtins__.print("")

print = dprint

print("something")