我知道如何利用time.sleep()
,但我很好奇如何打印这样的东西:
"hey...(pause)...you...(pause)....there"
其中'pause'是time.sleep()
个间隔。我只能在不同的行上打印这些间隔。有没有办法把它全部放在一条线上?
答案 0 :(得分:3)
在python 2中:
print "hey...",
time.sleep(0.5)
在python 3中:
print("hey...", end=' ')
time.sleep(0.5)
答案 1 :(得分:1)
在python2.x的print
语句中,您可以使用尾随逗号来抑制换行:
print "hey...",
time.sleep(1)
print "...you...",
time.sleep(1)
print "....there"
在python3.x上(或启用了from __future__ import print_function
),您使用end
函数的print
关键字:
print("hey...", end="")
等
或者,最后,您始终可以 1 写入sys.stdout
信息流:
import sys
sys.stdout.write("hey...")
time.sleep(1)
...
这里的优点是你可以明确地冲洗它:
sys.stdout.flush()
1 技术上并非总是如此。 sys.stdout
可以替换为其他内容:sys.stdout = 3
- 但是在没有清理之后制造一团糟是非常粗鲁的。但是,如果您发现自己处于这种情况,sys.__stdout__
是备份; - )。