我写了很多答案,因为我个人在我的小项目和项目中在不同的地方都用到了这些知识。有些可能与问题无关,但在其他地方会很有用。
list1 = list(range(100))
import tqdm
for x in tqdm.tqdm(list1):
sleep(0.01)
或者
tlist1 = tqdm.tqdm(list1)
for x in tlist1:
sleep(0.01)
基本上,您将列表传递给创建tqdm实例的函数。
您可以使用另一种解决方法,就像在tqdm文档中所述:
with tqdm.tqdm(total=len(list1)) as t:
for x in list1:
sleep(0.01)
t.update(1)
使用生成器与手动更新trange对象:
def literate(list1):
t = trange(len(list1))
for x in list1:
t.update(1)
yield x
for x in literate(list1):
sleep(0.01)
通过自动更新:
def li_iterate(li):
l = iter(li)
for _ in trange(len(li)):
yield next(l)
for x in li_iterate(list1):
sleep(0.01)
除此之外,如果你正在使用pandas dataframe,有时候可能需要在google-colaboratory中使用以下内容:
%%capture
from tqdm.notebook import tqdm as tq
tq().pandas()
def fn(x):
for a in list2:
print(x, a)
import pandas as pd
list1 = list(range(0, 9))
pd.DataFrame(data=list1).progress_apply(fn)
-希曼什