我想有两个独立的进度条。
这是一个最小的例子,如果我使用两个条形,它们就不能正确更新。而是创建新的条形图。
import time
from tqdm import *
pbar1 = tqdm(total=100)
pbar2 = tqdm(total=200)
for i in range(10):
pbar1.update(10)
pbar2.update(20)
time.sleep(1)
运行示例时。我得到类似的东西:
0%| | 0/100 [00:00<?, ?it/s]
20%|██ | 20/100 [00:01<00:04, 19.97it/s]
30%|███ | 30/100 [00:02<00:04, 15.36it/s]
40%|████ | 40/100 [00:03<00:04, 13.23it/s]
50%|█████ | 50/100 [00:04<00:04, 12.05it/s]
60%|██████ | 60/100 [00:05<00:03, 11.35it/s]
70%|███████ | 70/100 [00:06<00:02, 10.90it/s]
80%|████████ | 80/100 [00:07<00:01, 10.61it/s]
90%|█████████ | 90/100 [00:08<00:00, 10.42it/s]
100%|██████████| 100/100 [00:09<00:00, 10.28it/s]
100%|██████████| 200/200 [00:09<00:00, 20.57it/s]
如图所示,更新无法正常运行并添加新栏。 是否可以有两个独立的条可以正确更新?
答案 0 :(得分:10)
嘿,不确定你是否已修复此问题,但在初始化条形时尝试使用position
参数:
pbar1 = tqdm(total=100, position=1)
pbar2 = tqdm(total=200, position=0)
position:int,optional
指定行偏移以打印此栏(从0开始)如果未指定则自动。用于一次管理多个条(例如,从线程)。
答案 1 :(得分:3)
对于Windows上的每个人,请在其他线程中查看my answer。
简短版本:按照tqdm's known issues中的说明安装colorama
软件包:
pip install colorama
答案 2 :(得分:0)
Here 我有一些嵌套进度条的示例、tqdm
的示例以及我在一般情况下遇到的一些问题;我从中突出显示了以下代码片段,它产生了两个漂亮的嵌套进度条。
def test48():
with tqdm.notebook.trange(3, position=0, desc='Outter') as outter_range:
for i in outter_range:
leave = i == len(outter_range) - 1
for _ in tqdm.notebook.trange(3, position=1, leave=leave, desc='Inner'):
sleep(.3)