我有一个使用tqdm
进度条的 python 包。但是,我不希望这对我的包的用户来说是一个硬依赖。tqdm
如果没有安装,是否有一些简单的插入式解决方案可以轻松充当后备?
我正在使用 的total
andleave
属性tqdm.tqdm()
,以及实例的update
andclose
方法。tqdm.tqdm
当然。
def noobar(itrble, desc):
"""Simple progress bar. To be used if tqdm not installed."""
L = len(itrble)
print('{}: {: >2d}'.format(desc,0), end='')
for k,i in enumerate(itrble):
yield i
p = (k+1)/L
e = '' if k<(L-1) else '\n'
print('\b\b\b\b {: >2d}%'.format(int(100*p)), end=e)
sys.stdout.flush()
试试看
from time import sleep
for i in noobar(range(5),"my work"):
sleep(1)