首先,我不是在寻找如何用print(some_stuff, end="")
在同一行打印。
在Python2.7中,您可以键入:
while True:
for i in ["/","-","|","\\","|"]:
print "%s\r" % i,
它会打印,在同一行,在同一个位置,这5个字符,使它看起来像你有一个酒吧纺纱(实际上你可以试试)。 问题是,我不能在Python3.3中做同样的事情,我已经尝试了好几种方法。 我的具体应用是倒计时。。。代码如下:
import time
t = 120
while t > 0:
t -= 1
print("Time left till next update: %d seconds" % t)
time.sleep(1)
其中输出应该是字符串,只有秒数改变。。。希望有人能帮我。
使用
end='\r'
作为关键字参数:end
的默认值是'\n'
,但您可以指定自己的值。您也可以尝试更低的级别,例如:
os.write(fd, data)
在fd=1
(sys.stdin
)上。注意
data
必须是bytes
(b'whatever data'
)。它在终端中正常工作,但Python IDLE忽略
'\r'
和'\b'
。相关问题 更多 >
编程相关推荐