python库 - tqdm

发布于:2024-07-02 ⋅ 阅读:(247) ⋅ 点赞:(0)


tqdm 是一个用于 Python 的快速、可扩展的进度条库。它可以在长循环中提供即时的进度反馈,帮助开发者了解代码运行的进度和剩余时间。tqdm 这个名字来源于阿拉伯语单词 “taqaddum”,意为 “进展”,同时也与西班牙语中的 “te quiero demasiado”(我非常爱你)谐音。

主要特点

  1. 简单易用:只需在现有循环外层包裹 tqdm,即可显示进度条。
  2. 灵活性:支持多种循环类型,包括 for 循环、while 循环,以及自定义迭代器。
  3. 可定制性:可以自定义进度条的格式、颜色、描述信息等。
  4. 多线程/多进程支持:可以在多线程或多进程环境中使用。
  5. 轻量级:对性能影响极小,几乎不会增加额外的运行时间。

安装

通过 pip 安装 tqdm

pip install tqdm

基本用法

基本的 tqdm 使用示例:

1. 在 for 循环中使用
from tqdm import tqdm
import time

for i in tqdm(range(100)):
    time.sleep(0.1)  # 模拟一些耗时操作
2. 在 enumerate 中使用
from tqdm import tqdm
import time

for i, item in tqdm(enumerate(range(100))):
    time.sleep(0.1)  # 模拟一些耗时操作
3. 自定义描述信息
from tqdm import tqdm
import time

for i in tqdm(range(100), desc="Processing"):
    time.sleep(0.1)  # 模拟一些耗时操作
4. 在多线程中使用
from tqdm import tqdm
from concurrent.futures import ThreadPoolExecutor
import time

def task(n):
    time.sleep(0.1)  # 模拟一些耗时操作

with ThreadPoolExecutor(max_workers=5) as executor:
    list(tqdm(executor.map(task, range(100)), total=100))

高级用法

1. 手动更新进度条
from tqdm import tqdm

pbar = tqdm(total=100)
for i in range(10):
    # 模拟一些耗时操作
    pbar.update(10)
pbar.close()
2. 嵌套进度条
from tqdm import tqdm
import time

for i in tqdm(range(5), desc="Outer Loop"):
    for j in tqdm(range(100), desc="Inner Loop", leave=False):
        time.sleep(0.01)

tqdm 是一个非常实用的库,特别适合在需要长时间运行的循环中使用,以便实时监控进度。简单易用性和高度可定制性使其成为 Python 开发者工具箱中的一个重要工具。



网站公告

今日签到

点亮在社区的每一天
去签到