我想知道处理某个列表需要多长时间。
for a in tqdm(list1):
if a in list2:
#do something
但这不起作用。如果我使用for a in tqdm(range(list1))
,我将无法检索列表值。
你知道怎么做吗?
答案 0 :(得分:1)
import tqdm
for p in tqdm.tqdm([10,50]):
print(p)
答案 1 :(得分:0)
那应该有用。除非你不记得导入tqdm。尝试再次导入它。希望它有效
答案 2 :(得分:0)
我也有这个问题。 就我而言,我写道:
import tqdm
代替
from tqdm import tqdm
答案 3 :(得分:0)
List是其中的元素的列表,因此,如果执行len(ls)
,它将为您提供列表中元素的数量。 range
内置函数将在该范围内进行迭代,因此以下for循环应适用于tqdm
from tqdm import tqdm
ls = [i for i in range(0,20000000)]
for i in tqdm(range(len(ls))):
## code goes here ##
pass
答案 4 :(得分:0)
我写了很多答案,因为我个人在微型项目和项目的不同地方使用了所有这些答案。根据问题,有些可能无关紧要,但在其他地方还是有用的。
remove
或
list1 = list(range(100))
import tqdm
for x in tqdm.tqdm(list1):
sleep(0.01)
基本上,您正在传递列表以创建tqdm实例。
您可以使用tqdm documentation中的另一种解决方法:
tlist1 = tqdm.tqdm(list1)
for x in tlist1:
sleep(0.01)
使用生成器并手动更新trange对象:
# DOESN't work well in terminal, but should be ok in Jupyter Notebook
with tqdm.tqdm(total=len(list1)) as t:
for x in list1:
sleep(0.01)
t.update(1)
具有自动更新:
def literate(list1):
t = trange(len(list1))
for x in list1:
t.update(1)
yield x
for x in literate(list1):
sleep(0.01)
除了问题之外,如果您使用的是熊猫数据框,则可能需要在Google colaboratory的某个时间使用它:
def li_iterate(li):
l = iter(li)
for _ in trange(len(li)):
yield next(l)
for x in li_iterate(list1):
sleep(0.01)
- Himanshu