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

使用tqdmtqdm_notebook()在Python中展示中文进度的基本技巧

发布时间:2023-12-24 14:54:01

在Python中,我们可以使用tqdm库来显示进度条。tqdm是一个用于在循环中实现进度条显示的库,它可以帮助我们更直观地了解程序的执行进度。

为了在Jupyter Notebook中显示中文进度条,我们可以使用tqdm_notebook()函数来创建进度条。该函数会自动识别当前的环境,如果在Jupyter Notebook中执行,则会使用Jupyter Notebook的进度条显示方式;如果在其他环境中执行,则会使用普通的命令行进度条显示方式。

下面是展示中文进度的基本技巧和使用例子:

1. 安装tqdm库

在使用tqdm之前,我们需要首先安装它。可以使用pip命令来安装:

pip install tqdm

2. 导入tqdm库

在使用tqdm之前,需要先导入tqdm库:

from tqdm import tqdm_notebook

3. 创建进度条

使用tqdm_notebook()函数可以创建一个中文进度条。传入一个可迭代的对象作为参数,例如一个列表。

data = [1, 2, 3, 4, 5]
for item in tqdm_notebook(data, desc="处理中"):
    # 进行处理
    ...

在上面的例子中,我们创建了一个包含五个元素的列表data,并使用tqdm_notebook()将其包装成了一个进度条。在循环中,进度条会逐步显示处理过的元素数量。

4. 设置进度条描述信息

可以使用desc参数来设置进度条的描述信息,这样可以更清晰地显示当前进度条的任务内容。

from time import sleep

data = [1, 2, 3, 4, 5]
for item in tqdm_notebook(data, desc="处理中"):
    sleep(1)

在上面的例子中,我们通过sleep()函数模拟了一段耗时的任务,并使用desc参数设置了进度条的描述信息为"处理中"。执行过程中,我们可以看到进度条的描述信息。

5. 设置进度条样式

tqdm库提供了多种样式供选择,可以通过设置bar_format参数来选择进度条的样式。

data = [1, 2, 3, 4, 5]
for item in tqdm_notebook(data, desc="处理中", bar_format="{desc}: {percentage:3.0f}%|{bar}| {n_fmt}/{total_fmt}"):
    sleep(1)

在上面的例子中,我们通过bar_format参数设置了进度条的样式,包含进度条描述信息、百分比、进度条图形以及当前处理的元素数量与总数量。

除了bar_format参数,tqdm还提供了其他一些参数用于设置进度条的样式和行为。详情可以参考tqdm的文档。

6. 结束进度条

默认情况下,tqdm会在循环结束后自动关闭进度条。如果想要手动关闭进度条,可以使用tqdm_notebook()函数的close()方法。

data = [1, 2, 3, 4, 5]
with tqdm_notebook(total=len(data), desc="处理中") as pbar:
    for item in data:
        # 处理item
        ...
        pbar.update()
pbar.close()

在上面的例子中,我们使用了一个with语句,确保进度条会在循环结束后自动关闭。在每次处理完一个元素后,使用pbar.update()方法更新进度条。

以上就是使用tqdm_notebook()在Python中展示中文进度的基本技巧和使用例子。希望对你有所帮助!