1.tqdm
官网
qdm源自阿拉伯语taqaddum(?????),意为“进步”,是西班牙语(te quiero demasiado)的缩写,“我非常爱你”。
立即让您的循环显示一个智能进度表-只需用tqdm(iterable)包装任何可迭代的对象,就可以完成!
Tqdm 是一个快速,可扩展的Python进度条,可以在 Python 长循环中添加一个进度提示信息,用户只需要封装任意的迭代器 tqdm(iterator)。
1.1安装
1.1.1pip安装
1 | pip install tqdm |
1.1.2pip 通过github安装
1 | pip install -e git+https://github.com/tqdm/tqdm.git@master#egg=tqdm |
1.1.3 anacoda 安装
1 | conda install -c conda-forge tqdm |
2使用实例
2.1实例1:封装任意迭代器(iterator),以数组为例
(1)实例1 传入数组
1 2 3 4 5 6 7 8 | from tqdm import tqdm import time if __name__ = ‘’ a = ['a','b','c','d','e'] for i in tqdm(a): time.sleep(1) # do something print(‘procesing {}’.format(i)) |
结果如下:
前面是进度条,后面显示的是迭代到第几个/总迭代个数,[ ]中显示的是:[消耗时间<剩余时间,迭代的速度]
2.2实例2:使用trange
trange(i) 等同于 tqdm(range(i))
该函数有还有两个形参esc:str和leave:bool
desc:str :默认为空,若传入字符串后,在进度条前方显示该字符串
leave:bool : 默认为True,表示是否进度条完成后,是否继续显示该进度条
示例代码:
1 2 3 4 | from tqdm import trange import time for i in trange(100,desc='Progress ',leave=False): time.sleep(0.01)#do somothing |
结果:
2.3实例3:在外部使用
可以通过set_description,打印信息
1 2 3 4 5 | from tqdm import tqdm import time bar = tqdm(["a", "b", "c", "d"]) for char in pbar: pbar.set_description("Processing %s" % char) |
结果
