一个 Python 的进度条库。
基础用法
用 tqdm 包裹一个可迭代对象即可:
from tqdm import tqdm
import time
# 模拟一个耗时任务
for i in tqdm(range(100)):
time.sleep(0.1)或者也可以用 trange:
from tqdm import trange
import time
# 模拟一个耗时任务
for i in trange(100):
time.sleep(0.1)核心参数
| 参数 | 说明 | 示例 |
|---|---|---|
| desc | 进度条左侧的描述文字 | desc="Loading Data" |
| total | 迭代总次数(无法自动识别长度时手动指定) | total=500 |
| unit | 进度单位 | unit="it" 或 unit="B" |
| ncols | 整个进度条的宽度 | ncols=80 |
| postfix | 动态更新进度条右侧的字典信息 | postfix={"loss": 0.5} |
其他
避免在循环中直接使用 print ,而是改用 tqdm.write
动态更新末尾信息:
from tqdm import trange
import time
pbar = trange(100, desc='Training', ncols=100)
for i in pbar:
time.sleep(0.1)
loss = 1 / (i + 1)
pbar.set_postfix(loss=loss)