1. tqdm基础入门:让进度条成为你的开发助手
第一次看到tqdm这个单词时,我以为是某种缩写,后来才知道它源自阿拉伯语"taqadum"(意为"进步"),在西班牙语中写作"te quiero demasiado"(意为"我非常爱你")。这个有趣的命名似乎暗示着开发者对它的喜爱——确实,用过tqdm的人都会爱上这个简单却强大的进度条工具。
安装tqdm只需要一行命令,这也是Python生态最迷人的地方:
bash复制pip install tqdm
基础使用简单到令人发指。假设你有个耗时循环,传统做法是:
python复制for i in range(100):
time.sleep(0.1) # 模拟耗时操作
print(f"已完成 {i+1}/100")
这种输出会刷屏,而用tqdm改造后:
python复制from tqdm import tqdm
for i in tqdm(range(100)):
time.sleep(0.1)
你会看到一个自动更新的进度条,包含剩余时间预估、进度百分比和迭代速度。我在处理大型CSV文件时,这个功能帮我节省了大量估算时间。
注意:在Jupyter Notebook中使用时需要从tqdm.notebook导入,否则可能显示异常
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 高级技巧:解锁tqdm的隐藏功能
2.1 自定义进度条样式
tqdm的默认样式已经很美观,但我们可以做得更多。比如修改进度条字符:
python复制bar_format = "{l_bar}{bar:20}{r_bar}"
for i in tqdm(range(100), bar_format=bar_format):
time.sleep(0.05)
这里l_bar是左侧信息,bar是进度条本身,r_bar是右侧信息。我常用这种格式在日志文件中记录进度。
2.2 手动控制进度
有时我们需要非迭代式的进度更新,比如处理流数据时:
python复制with tqdm(total=100) as pbar:
for i in range(10):
time.sleep(0.5)
pbar.update(1
