前言
今天和你们分享一个进度条可视化库,它的名字叫作 tqdm
,能够帮助咱们监测程序运行的进度,用户只须要封装可迭代对象便可。
python
安装
经过命令行直接安装。web
pip install tqdm
也可使用豆瓣镜像安装。微信
pip install -i https://pypi.douban.com/simple tqdm
执行上述命令后,能够检查一下是否安装成功。svg
pip show tqdm
使用方式
如下演示运行环境:jupyter notebook
不一样运行环境使用方式稍有不一样,可根据警告自行调整。
oop
tqdm
主要参数可选参数众多,咱们先看一下经常使用的一些参数。学习
主要参数ui
iterable
: 可迭代的对象, 在手动更新时不须要进行设置desc
: str, 左边进度条的描述性文字total
: 总的项目数leave
: bool, 执行完成后是否保留进度条file
: 输出指向位置, 默认是终端, 通常不须要设置ncols
: 调整进度条宽度, 默认是根据环境自动调节长度, 若是设置为0, 就没有进度条, 只有输出的信息unit
: 描述处理项目的文字, 默认是’it’, 例如: 100 it/s, 处理照片的话设置为’img’ ,则为 100 img/sunit_scale
: 自动根据国际标准进行项目处理速度单位的换算, 例如 100000 it/s >> 100k it/scolour
: 进度条颜色,例如:‘green’, ‘#00ff00’。
示例
直接将列表传入 tqdm()
。spa
from tqdm.notebook import tqdm
from time import sleep
for char in tqdm(['C', 'Python', 'Java', 'C++']):
sleep(0.25)
使用可迭代对象。命令行
for i in tqdm(range(100)):
sleep(0.05)
tqdm
提供了 trange()
方法能够代替 tqdm(range())
。3d
from tqdm.notebook import trange
for i in trange(100):
sleep(0.05)
咱们在进度条前面添加描述性内容,这里把 tqdm
写在循环外,使用 set_description()
在进度条前面添加 “进度 %d”。
pbar = tqdm(range(5))
for char in pbar:
pbar.set_description("进度 %d" %char)
sleep(1)
咱们能够设置进度条的更新的间隔,下面咱们设置总数为 total=100
,而后分四次,使得进度条按 10%,20%,30%,40%的间隔来更新。
with tqdm(total=100) as pbar:
for i in range(1, 5):
sleep(1)
# 更新进度
pbar.update(10*i)
更改进度条颜色。
with tqdm(total=100, colour='pink') as pbar:
for i in range(1, 5):
sleep(1)
# 更新进度
pbar.update(10*i)
注:在使用 tqdm
显示进度条的时候,若是想要输出内容的话不可以使用 print
,print
会致使输出多行进度条,可使用 tqdm.write()
。
for i in tqdm(range(5)):
tqdm.write("come on")
sleep(0.1)
对于多重循环能够指定多个进度条,设置 leave=False
第二个循环执行完后,进度条不保存。
for i in trange(3, desc='1st loop'):
for i in trange(100, desc='2nd loop', leave=False):
sleep(0.01)
对于刚入门 Python
或是想要入门 Python
的小伙伴,能够经过下方小卡片联系做者,一块儿交流学习,都是重新手走过来的,有时候一个简单的问题卡好久,但可能别人的一点拨就会恍然大悟,由衷的但愿你们可以共同进步。另有整理的近千套简历模板,几百册电子书等你来领取哦!
添加本人微信,备注【交流群】, 拉你进Python交流群👇🏻