一文看懂Python第三方库(一)-----tqdm库

简介

显示循环的进度条的库。taqadum在阿拉伯语中的意思是进展。tqdm可以在长循环中添加一个进度提示信息,用户只需要封装任意的迭代器 tqdm(iterator),是一个快速、扩展性强的进度条工具库。

  • 首先,我们导入tqdm库、time库、random随机数库
from tqdm import tqdm,trange
import time
from random import random,randint

基于迭代对象运行

  • 示例1
for i in trange(100):
    time.sleep(0.05)
  • 示例2
for i in tqdm(range(100),desc='Processing'):
    time.sleep(0.05)
  • 示例3
dic = ['a','b','c','d','e']
pbar = tqdm(dic)
for i in pbar:
    # 通过tqdm提供的set_description方法可以实时查看每次处理的数据
    pbar.set_description('Processing %s' % i)
    time.sleep(0.2)

设置update、total相关参数

# 通过update方法可以控制每次进度条更新的进度
# #total参数设置进度条的总长度
with tqdm(total=100) as pbar:
    for i in range(100):
        time.sleep(0.05)
        # 每次更新进度条的长度
        pbar.update(1)

自定义进度条显示信息

with trange(100) as t:
    for i in t:
        # 设置进度条左边显示的信息
        t.set_description("GEN % i" % i)
        # 设置进度条右边显示的信息
        t.set_postfix(loss = random(),gen = randint(1,999),str = 'h',lst = [1,2])
        time.sleep(0.1)

多层循环进度条

for i in tqdm(range(20),ascii=True,desc='1st loop'):
    for j in tqdm(range(10),ascii = True,desc='2st loop'):
        time.sleep(0.1)

猜你喜欢

转载自blog.csdn.net/dongjinkun/article/details/114364464