Python 非滚动控制台输出
我想在屏幕上显示一些输出,然后再更新这些输出,而不是在它旁边或下面再输入新的内容。换句话说,就是想在控制台上直接修改已经显示的文字,就像一些控制台应用程序中的进度条那样。
我该如何在Python中实现这个功能呢?
1 个回答
1
你不能直接在控制台里做到这一点。最好的办法是在每次打印后清屏,方法如下:
import os,time
clear = lambda: os.system('cls') # or os.system('clear') for Unix
for i in range(10,0,-1):
clear()
print i
time.sleep(1)
这样你就能在控制台里看到一个倒计时,文字会在同一个地方显示。
另外,正如这里所示,你也可以这样做:
for i in range(10,0,-1):
print '\r'+str(i), #or print('\r'+str(i), end='') for python-3.x
time.sleep(1)