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

Python中的tqdm.auto:让你的代码更加直观和友好

发布时间:2023-12-28 13:41:47

tqdm.auto是一个用于Python的进度条库,它能够帮助你更加直观地展示代码的运行进度,并提供一些友好的功能。在这篇文章中,我们将介绍如何使用tqdm.auto,并提供一些使用例子。

安装和导入

首先,你需要安装tqdm.auto库。打开终端并运行以下命令:

pip install tqdm

安装完成后,我们可以在Python代码中导入tqdm.auto:

from tqdm.auto import tqdm

使用例子

我们将通过几个例子来展示tqdm.auto的基本用法和功能。首先,我们来看一个简单的进度条示例,假设我们有一个循环,需要计算1到100的平方,并使用tqdm.auto展示循环的进度。

from tqdm.auto import tqdm

# 设置循环范围为1到100
for i in tqdm(range(1, 101)):
    # 计算平方
    square = i ** 2

    # 模拟一些耗时的操作
    time.sleep(0.1)

运行这段代码,你将看到一个带有进度条的输出结果,展示了代码的运行进度。这对于那些较长时间运行的循环非常有用,让你能够看到代码正在运行的进度。

除了展示简单的进度条外,tqdm.auto还提供了一些进度相关的功能,比如估计时间、速度等。我们来看一个例子,计算1到100的平方,并在进度条上展示估计的剩余时间和运行速度。

import time
from tqdm.auto import tqdm

# 设置循环范围为1到100
for i in tqdm(range(1, 101), ncols=70, bar_format='{l_bar}{bar}| {n_fmt}/{total_fmt} [{elapsed}<{remaining}, {rate_fmt}{postfix}]'):
    # 计算平方
    square = i ** 2

    # 模拟一些耗时的操作
    time.sleep(0.1)

在这个例子中,我们通过设置ncols和bar_format参数,来自定义进度条的展示样式。ncols=70设置进度条的宽度为70个字符,bar_format参数则定义了进度条的显示格式,包括了估计的剩余时间、已经过的时间、运行的速度等信息。

除了展示进度条外,tqdm.auto还提供了一些其他的功能,比如暂停和取消进度条。我们来看一个例子,展示如何在循环的过程中暂停和取消进度条。

import time
from tqdm.auto import tqdm

# 设置循环范围为1到100
for i in tqdm(range(1, 101)):
    # 计算平方
    square = i ** 2

    # 模拟一些耗时的操作
    time.sleep(0.1)

    # 检查是否按下了'q'键,如果是则取消循环
    if tqdm.status == 'paused' and input('是否取消循环?(y/n): ') == 'y':
        break

在这个例子中,我们通过检查tqdm.status的值来判断进度条是否被暂停。如果进度条被暂停,我们会在终端输出一个提示,并等待用户输入来决定是否取消循环。

总结

在这篇文章中,我们介绍了如何使用tqdm.auto来改善Python代码的可视化和友好性。我们展示了一些例子,包括展示简单的进度条、展示估计的剩余时间和运行速度以及暂停和取消进度条。希望这些例子对你有所帮助,并能够让你的代码更加直观和友好。