慢慢地打印每件事(模拟打字)
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")
[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")