tqdm是Python中用于显示循环和数据处理进度的轻量级库,通过pip install tqdm安装后,可将tqdm包装在range或列表等可迭代对象上实现实时进度条;支持用desc参数添加任务描述,结合pandas使用tqdm.pandas()启用progress_apply功能,还可通过手动创建tqdm实例并调用update()方法实现复杂场景下的进度控制,适用于终端和Jupyter Notebook环境。

tqdm 是 Python 中一个轻量级且易用的进度条库,可以为循环、数据处理等耗时操作添加实时进度显示。使用它能让程序运行过程更直观。
安装 tqdm
如果尚未安装,可通过 pip 安装:
pip install tqdm在 for 循环中显示进度条
最常见用法是包装一个可迭代对象,比如 range 或列表:
from tqdm import tqdmimport time
for i in tqdm(range(100)):
time.sleep(0.01) # 模拟耗时操作
运行后会在终端显示动态进度条,包含已完成比例、进度条图形、已用时间、预估剩余时间等信息。
立即学习“Python免费学习笔记(深入)”;
自定义进度条描述
可以添加描述来说明当前任务内容:
for i in tqdm(range(50), desc="处理数据"): time.sleep(0.02)“desc”参数会显示在进度条前,帮助识别不同任务。
结合 pandas 使用(可选)
tqdm 还支持与 pandas 的 apply 操作集成:
from tqdm import tqdmtqdm.pandas() # 启用 pandas 进度条
df['new_col'] = df['old_col'].progress_apply(lambda x: x ** 2)
使用 progress_apply 替代 apply,即可看到进度条。
手动控制进度条(高级用法)
对于非循环或复杂逻辑,可手动更新进度:
pbar = tqdm(total=100)for i in range(10): time.sleep(0.1) pbar.update(10) # 每次更新10个单位
pbar.close()
通过 update() 手动增加进度,适合异步或分块处理场景。
基本上就这些常用方式。tqdm 能自动适配环境,在 Jupyter Notebook 中也会有良好显示效果,不复杂但容易忽略细节。











