![faa28b2619a96cb254b2463f9f513669.png](https://img-blog.csdnimg.cn/img_convert/faa28b2619a96cb254b2463f9f513669.png)
使用tqdm的好处
![24f2db98c339f27ec3c7f8cf41ad8a0f.png](https://img-blog.csdnimg.cn/img_convert/24f2db98c339f27ec3c7f8cf41ad8a0f.png)
计时
结束的时候, 从"已过时间"那里可以得到总共运行的时间
获得程序"剩余时间"(这是估计出来的)
好处:
如果发现运行时间过长的话, 可以考虑中断程序, 对程序进行一些加速, 比如对程序进行优化, 缩小超参组规模, 缩小训练集数据等等.
比如去休息一下, 喝杯咖啡等, 等到差不多结束时再回来, 而不是一直盯着屏幕等待着程序结束.
获得进度
不知道这个库之前, 经常通过打印循环的序号来获得进度, 有了这个, 更方便了.
直接得到"速度"
正在运行的时候, 是"瞬时速度"
运行结束后, 是"平均速度"
上面这个结论是通过自己编程做实验得到的:
from tqdm import tqdm
from time import sleep
for i in tqdm(range(100)):
for j in range(i):
sleep(0.01)
![8e06b91afdebc975f58aa2a3ecf33006.png](https://img-blog.csdnimg.cn/img_convert/8e06b91afdebc975f58aa2a3ecf33006.png)
平均速度的理论值与tqdm显示的平均速度差不多.
运行中, 是瞬时速度, 邻近结束前, 瞬时速度大概是平均速度的一半.
![629815d8d0b703bd4b9a229330da4e2a.png](https://img-blog.csdnimg.cn/img_convert/629815d8d0b703bd4b9a229330da4e2a.png)
发现如果中断程序, 就显示为平均速度.
![1c3adc60e17629b8dfdf6a911fdb039b.png](https://img-blog.csdnimg.cn/img_convert/1c3adc60e17629b8dfdf6a911fdb039b.png)
tqdm的特点
overhead小,平均一次循环的overhead是80 ns。
智能化预测剩余时间。
官方网站:
https://github.com/tqdm/tqdmgithub.com常见的使用方法
用法1: tqdm(iterable)
demo:
from tqdm import tqdm
from time import sleep
text = ""
for char in tqdm(["a", "b", "c", "d"]):
sleep(0.25)
text = text + char
用法2: trange(N)
trange(N)等价于tqdm(range(N))
demo:
from tqdm import trange
for i in trange(100):
sleep(0.01)
总结:
tqdm是简单易用的显示进度条的Python库, 对治疗"等待焦虑综合症"非常有效.
创作不易, 请大家"素质三连": 点赞, 收藏, 分享.