数据加载器的tqdm最佳方法

问题描述

如何将tqdm用于data_loader?

这是正确的方法吗?

for i,j in enumerate(data_loader,total = 100):
           pass

解决方法

您需要用tqdm包装可迭代对象,因为他们的文档明确指出:

立即让您的循环显示一个智能进度表-只需包装任何 用tqdm(iterable)迭代,就可以完成!

如果要枚举可迭代对象,则可以执行以下操作。睡眠只是为了形象化。

from tqdm import tqdm
from time import sleep

data_loader = list(range(1000))

for i,j in enumerate(tqdm(data_loader)):
    sleep(0.01)