欢迎访问宙启技术站
智能推送

Python中的tqdm()库:优雅地显示循环进度

发布时间:2023-12-18 16:58:10

tqdm是一个用于在循环中显示进度条的Python库。它提供了一种简单而优雅的方式来跟踪循环的进度,并在终端中显示进度条和相关信息。在处理长时间运行的任务或大型数据集时,tqdm可以让您更好地可视化进度,从而提高代码可读性和用户体验。

要使用tqdm库,首先需要安装。可以使用pip在终端中运行以下命令来安装最新版本:

pip install tqdm

安装完成后,就可以开始使用tqdm了。下面是一个简单的例子来演示如何使用tqdm来显示循环的进度条:

from tqdm import tqdm
import time

# 创建一个迭代器
items = range(10)

# 使用tqdm来遍历迭代器
for item in tqdm(items):
    # 模拟耗时的操作
    time.sleep(0.1)

在上面的例子中,我们首先从tqdm中导入了tqdm函数和time模块。然后,我们创建了一个包含10个元素的迭代器,并使用tqdm来遍历它。在每次循环中,我们使用time.sleep函数来模拟一个耗时的操作。

运行上述代码,你会看到一个类似于下面的输出:

100%|██████████| 10/10 [00:01<00:00,  9.99it/s]

进度条的左侧显示了当前循环的进度,右侧显示了估计的剩余时间。在本例中,我们设定的每次循环的间隔是0.1秒,因此tqdm每秒可以达到10次的循环。

除了基本的使用方式外,tqdm还提供了一些额外的功能和选项,以满足不同的需求。例如,你可以更改进度条的样式、设定进度条的总长度、给进度条添加描述等等。以下是一些常用选项的示例:

from tqdm import tqdm
import time

items = range(10)

# 更改进度条样式
for item in tqdm(items, bar_format='{l_bar}{bar} {n_fmt}/{total_fmt}'):
    time.sleep(0.1)

# 设定进度条的总长度
for item in tqdm(items, total=len(items)):
    time.sleep(0.1)

# 给进度条添加描述
for item in tqdm(items, desc='Processing items'):
    time.sleep(0.1)

在上述示例中,我们使用了不同的选项来更改进度条的样式、设定进度条的总长度和给进度条添加了一个描述。

总结起来,tqdm是一个非常有用的Python库,可以帮助我们优雅地显示循环的进度条。它可以帮助我们更好地了解代码的执行状态,并提高代码的可读性和用户体验。我鼓励你在需要的时候尝试使用tqdm,并根据自己的需求对其进行定制。