Are*_*ski 5 python command-line console ipython
一些程序能够修改控制台输出,wget 很容易想到。

我怎样才能在纯 Python 中做到这一点?我知道 IPython 有clear_output()。我试过了,但即使这样也不起作用。我更喜欢纯 Python。
from IPython.core.display import clear_output
from time import sleep
for i in range(100):
clear_output()
print '[', '='*i, ' '*(100-i), ']'
sleep(0.1)
Run Code Online (Sandbox Code Playgroud)
mur*_*uru 11
虽然适当的库是最好的解决方案,但我想展示一个简单的替代方案:使用\r(回车)而不是\n(换行)作为行尾,以便将光标放在当前行的开头,而不是在下一行。
#! /usr/bin/python3
from time import sleep
for i in range(100):
print('[' + '='*i + ' '*(100-i) + ']', end='\r')
sleep(0.1)
Run Code Online (Sandbox Code Playgroud)
Helio 提示的解决方案效果很好!我需要pip install progressbar首先,但随后一个官方示例就像一个魅力。
from progressbar import *
pbar = ProgressBar(widgets=[Percentage(), Bar()], maxval=300).start()
for i in range(300):
time.sleep(0.01)
pbar.update(i+1)
pbar.finish()
Run Code Online (Sandbox Code Playgroud)
官方网站(附示例):https : //code.google.com/p/python-progressbar/