python中的 tqdm 是一个快速,可扩展的Python进度条,可以在 Python 长循环中添加一个进度提示信息,用户只需要封装任意的迭代器 tqdm(iterator)。
 

安装

pip install tqdm
/* 或者 */
conda installtqdm

使用方法

tqdm(list)方法可以传入任意一种list,比如数组、字典、集合等等。

from tqdm import tqdm

for i in tqdm(range(1000)):  
     #do something
     pass  

问题

当进行深度学习训练时,遇到较大数据集加载、训练时,假如使用tqdm,导致版面完全被进度条占据,影响控制台阅读(尤其CMD等命令行)。

演示

解决1

一个解决办法,是改变进度条的刷新频率,默认刷新频率0.1s,改为10s刷新一次可大幅缩短版面。如下使用 mininterval 参数设置为10秒。 则效果较好。

import tqdm
loader = tqdm(loader, desc='描述词',mininterval=10)

效果


解决2

使进度条在单行内滚动 ,较为简洁

from tqdm import tqdm
import time
for i in tqdm(range(10000), ncols=10): 
    time.sleep(0.001)

 

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐