tqdm
Tqdm 是 Python 进度条库,可以在 Python 长循环中添加一个进度提示信息。用户只需要封装任意的迭代器,是一个快速、扩展性强的进度条工具库。
安装方法 ==pip install tqdm==
使用方法
1.传入可迭代对象range
import time
from tqdm import *
for i in tqdm(range(1000)):
time.sleep(.01) #进度条每0.01s前进一次,总时间为1000*0.01=10s
# 运行结果如下
100%|██████████| 1000/1000 [00:10<00:00, 93.21it/s]
使用trange, trange(i) 是 tqdm(range(i)) 的简单写法
from tqdm import trange
for i in trange(1000):
time.sleep(.01)
# 运行结果如下
100%|██████████| 1000/1000 [00:10<00:00, 93.21it/s]
2.为进度条设置描述set_description
在for循环外部初始化tqdm,可以打印其他信息:
3.手动控制进度
4.tqdm的write方法
5.手动设置处理的进度
通过update方法可以控制每次进度条更新的进度:
除了使用with之外,还可以使用另外一种方法实现上面的效果:
6.自定义进度条显示信息
通过set_description和set_postfix方法设置进度条显示信息:
tqdm同一行显示进度条
因为ncols默认值超过了窗口宽度,导致需要在下一行显示进度。所以把宽度设置到合适的值就可以在同一行内显示。而进度条的宽度设置参数为ncols=10。
在深度学习中如何使用
下面是一段手写数字识别代码
如果不给train_loader加上tqdm会什么也不现实,加入后显示如下:
对应5个eopch的5个进度显示
如果我们想要它显示在一行,在tqdm中添加leave=False参数即可
注意
我们将tqdm加到train_loader无法得到索引,要如何得到索引呢?可以使用下面的代码
我们觉得还有点不太满足现在的进度条,我们得给他加上我们需要的信息,比如准确率,loss值,如何加呢?
可以看到我们的acc和epoch 还有loss都打在了控制台中。以上就是相关tqdm的使用
本文转自 https://blog.csdn.net/wxd1233/article/details/118371404,如有侵权,请联系删除。
Last updated