Tqdm 是一个快速,可扩展的Python进度条,可以在 Python 长循环中添加一个进度提示信息,用户只需要封装任意的迭代器 tqdm(iterator)。
# 方式一
for i in tqdm(range(10)): # 里面的参数表示总步长
sleep(10)
# 0%| | 0/10 [00:00<?, ?it/s]
# 10%|█ | 1/10 [00:10<01:30, 10.01s/it]
# 20%|██ | 2/10 [00:20<01:20, 10.01s/it]
# 30%|███ | 3/10 [00:30<01:10, 10.01s/it]
# 40%|████ | 4/10 [00:40<01:00, 10.01s/it]
# 50%|█████ | 5/10 [00:50<00:50, 10.01s/it]
# 60%|██████ | 6/10 [01:00<00:40, 10.01s/it]
# 70%|███████ | 7/10 [01:10<00:30, 10.01s/it]
# 80%|████████ | 8/10 [01:20<00:20, 10.01s/it]
# 90%|█████████ | 9/10 [01:30<00:10, 10.01s/it]
# 100%|██████████| 10/10 [01:40<00:00, 10.01s/it]
# 方式二
for i in trange(10):
sleep(10)
# 0%| | 0/10 [00:00<?, ?it/s]
# 10%|█ | 1/10 [00:10<01:30, 10.01s/it]
# 20%|██ | 2/10 [00:20<01:20, 10.01s/it]
# 30%|███ | 3/10 [00:30<01:10, 10.01s/it]
# 40%|████ | 4/10 [00:40<01:00, 10.01s/it]
# 50%|█████ | 5/10 [00:50<00:50, 10.01s/it]
# 60%|██████ | 6/10 [01:00<00:40, 10.01s/it]
# 70%|███████ | 7/10 [01:10<00:30, 10.01s/it]
# 80%|████████ | 8/10 [01:20<00:20, 10.01s/it]
# 90%|█████████ | 9/10 [01:30<00:10, 10.01s/it]
# 100%|██████████| 10/10 [01:40<00:00, 10.01s/it]
# 方式三:添加注释
pbar = tqdm(["a", "b", "c", "d"])
for char in pbar:
sleep(10)
pbar.set_description("Processing %s" % char)
# Processing a: 25%|██▌ | 1/4 [00:10<00:30, 10.01s/it]
# Processing b: 50%|█████ | 2/4 [00:20<00:20, 10.01s/it]
# Processing c: 75%|███████▌ | 3/4 [00:30<00:10, 10.01s/it]
# Processing d: 100%|██████████| 4/4 [00:40<00:00, 10.01s/it]
# 方式四:设置总步长和单次更新步长
with tqdm(total=100) as pbar:#total表示总步长
for i in range(10):
sleep(3)
pbar.update(10)#设置每次更新的进度步长
# 0%| | 0/100 [00:00<?, ?it/s]
# 10%|█ | 10/100 [00:10<01:30, 1.00s/it]
# 20%|██ | 20/100 [00:20<01:20, 1.00s/it]
# 30%|███ | 30/100 [00:30<01:10, 1.00s/it]
# 40%|████ | 40/100 [00:40<01:00, 1.00s/it]
# 50%|█████ | 50/100 [00:50<00:50, 1.00s/it]
# 60%|██████ | 60/100 [01:00<00:40, 1.00s/it]
# 70%|███████ | 70/100 [01:10<00:30, 1.00s/it]
# 80%|████████ | 80/100 [01:20<00:20, 1.00s/it]
# 90%|█████████ | 90/100 [01:30<00:10, 1.00s/it]
# 100%|██████████| 100/100 [01:40<00:00, 1.00s/it]
# 方式五:方式四的变形
pbar = tqdm(total=100)
for i in range(10):
sleep(10)
pbar.update(10)
pbar.close()
# 0%| | 0/100 [00:00<?, ?it/s]
# 10%|█ | 10/100 [00:10<01:30, 1.00s/it]
# 20%|██ | 20/100 [00:20<01:20, 1.00s/it]
# 30%|███ | 30/100 [00:30<01:10, 1.00s/it]
# 40%|████ | 40/100 [00:40<01:00, 1.00s/it]
# 50%|█████ | 50/100 [00:50<00:50, 1.00s/it]
# 60%|██████ | 60/100 [01:00<00:40, 1.00s/it]
# 70%|███████ | 70/100 [01:10<00:30, 1.00s/it]
# 80%|████████ | 80/100 [01:20<00:20, 1.00s/it]
# 90%|█████████ | 90/100 [01:30<00:10, 1.00s/it]
# 100%|██████████| 100/100 [01:40<00:00, 1.00s/it]