重置 tqdm 进度条
resetting tqdm progress bar
我想重置 tqdm 进度条。
这是我的代码:
s = tqdm(range(100))
for x in s:
pass
# Reset it here
s.reset(0)
for x in s:
pass
Tqdm PB 仅适用于第一个循环。我尝试使用 .reset(0)
函数重置它,但它不起作用。
以上代码的输出为:
100%|██████████| 100/100 [00:00<?, ?it/s]
我注意到他们在这里使用:Restting progress bar counter这段代码
pbar.n = 0
pbar.refresh()
但效果不佳。
尝试在旧进度条上创建一个新进度条。垃圾收集器随后会处理旧的,一旦代码中不再引用它,就会将其从内存中清除。
s = tqdm(range(100))
for x in s:
pass
# reset it here
s = tqdm(range(100))
for x in s:
pass
包装可迭代对象时,tqdm
将在可迭代对象耗尽时 close()
栏。这意味着重复使用(refresh()
等)将不起作用。您可以手动解决您的问题:
from tqdm import tqdm
s = range(100)
t = tqdm(total=len(s))
for x in s:
t.update()
t.refresh() # force print final state
t.reset() # reuse bar
for x in s:
t.update()
t.close() # close the bar permanently
我想重置 tqdm 进度条。
这是我的代码:
s = tqdm(range(100))
for x in s:
pass
# Reset it here
s.reset(0)
for x in s:
pass
Tqdm PB 仅适用于第一个循环。我尝试使用 .reset(0)
函数重置它,但它不起作用。
以上代码的输出为:
100%|██████████| 100/100 [00:00<?, ?it/s]
我注意到他们在这里使用:Restting progress bar counter这段代码
pbar.n = 0
pbar.refresh()
但效果不佳。
尝试在旧进度条上创建一个新进度条。垃圾收集器随后会处理旧的,一旦代码中不再引用它,就会将其从内存中清除。
s = tqdm(range(100))
for x in s:
pass
# reset it here
s = tqdm(range(100))
for x in s:
pass
包装可迭代对象时,tqdm
将在可迭代对象耗尽时 close()
栏。这意味着重复使用(refresh()
等)将不起作用。您可以手动解决您的问题:
from tqdm import tqdm
s = range(100)
t = tqdm(total=len(s))
for x in s:
t.update()
t.refresh() # force print final state
t.reset() # reuse bar
for x in s:
t.update()
t.close() # close the bar permanently