python tqdm实现进度条功能

       当一个循环较长,我们想实现一个进度条的时候,tqdm是一个非常好的选择。

安装

tqdm的安装非常简单,用pip就可以了。

pip install tqdm

使用

在tqdm包中,我们一般使用的两个函数是tqdmtrange两个。建议大家自己尝试一下,看一下效果。

tqdm

tqdm是应用最广的一个函数了,只需要把它包裹在循环迭代的外部就可以了:tqdm(iteration)

示例1:

from tqdm import tqdm
import time
k=0
for i in tqdm(range(1000)):
    k=k+i
    time.sleep(0.01) #这里的timesleep就是说在每一次循环的似乎后暂停一下,这样我们看进度条读档比较明显

python tqdm实现进度条功能_第1张图片

示例2:

from tqdm import tqdm
import time
text = ""
letters = ["a","b","c","d","e","f","g"]
for char in tqdm(letters):
    text = text + char
    time.sleep(0.1)

python tqdm实现进度条功能_第2张图片


trange

在这里,trange(1000)=tqdm(range(1000))

from tqdm import trange
import time
k=0
for i in trange(1000):
    k=k+i
    time.sleep(0.01) 

python tqdm实现进度条功能_第3张图片


set_description参数

在tqdm包中有两个参数比较有意思,第一个是set_description,也就是说设置一下描述信息。

letters = ["a","b","c","d","e","f","g"]
pbar = tqdm(letters)
for char in pbar:
    pbar.set_description("Processing %s" % char)
    time.sleep(1)

或者也可以使用desc,这样方便一点

for i in tqdm(range(2), desc='1st loop'):
    for j in trange(100, desc='2nd loop', leave=False):
        time.sleep(0.01)

在Jupyter notebook中

在Jupyter notebook中,我们需要把tqdm换成tqdm_notebook,trange换成tnrange就可以啦。

你可能感兴趣的:(编程,python)