Python中的进度条显示方案

c2bf673655ec5f5f5f7c4ad190d152a3.png

迷途小书童

读完需要

3

分钟

速读仅需 1 分钟

大家好,我是迷途小书童!

tqdm 是一个非常常用的 Python 进度条库,它可以在循环迭代和 IO 操作期间添加一个进度条,直观地显示循环迭代的进程。

tqdm 是在 2013 年发布的,目的是为 Python 提供一个简单、轻量级的进度条解决方案。随后 tqdm 又增加了对 Jupyter notebook的支持,也支持在 pandas 和 PySpark 等数据处理操作中使用。现在 tqdm 已经被广泛应用于机器学习、深度学习等 Python 项目中。

tqdm 使用迭代器来封装你的迭代对象,追踪迭代次数,并在每次迭代时打印进度条。实际上它会在一个线程内对迭代器进行监控,不会影响原迭代的性能。

1

   

安装

这是一个第三方库,所以安装一下,执行命令

pip install tqdm

2

   

示例代码

下面来看看常见的一些示例程序

import time
from tqdm import tqdm


# 简单的for循环
for i in tqdm(range(1000)): 
    time.sleep(0.01)

081e4f9104def6583c75c9ce03329039.png

使用 trange,它是 tqdm(range(i)) 的简单写法

import time
from tqdm import trange


for i in trange(1000):
    time.sleep(0.01)

c5edd1c0cc2944bcd1c74e28722f7e89.png

tqdm 传入数组

import time
from tqdm import tqdm


for char in tqdm(["a", "b", "c", "d", "e", "f", "g"]):
    time.sleep(0.01)

读取文件中的数据

import time
from tqdm import tqdm


# 读取文件中的数据
with open('file.txt') as f:
    for line in tqdm(f):
        time.sleep(0.01)

ad36cfc9006d3fd18ee38d828240122a.png

在 pandas 中使用

import pandas as pd
import numpy as np
from tqdm import tqdm


df = pd.DataFrame(np.random.randint(0, 500, (100000, 6)))
tqdm.pandas(desc="Demo")
df.progress_apply(lambda x: x**2)

3

   

小结

总体来说,tqdm 是一个非常实用的 Python 进度条库,上手简单但功能强大,是 Python 项目中显示进度的首选方案。

4

   

免费社群

9b9bbd818c2ab21f862db6240dc5cbc2.jpeg

猜你喜欢

转载自blog.csdn.net/djstavaV/article/details/132784865