【Python】tqdm 介绍与使用

导读:本篇文章讲解 【Python】tqdm 介绍与使用,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com


一、tqdm 简介

tqdm 是一个快速,可扩展的 Python 进度条,可以在 Python 长循环中添加一个进度提示信息,用户只需要封装任意的迭代器: tqdm(iterator)。


二、tqdm 使用

1. 基于迭代对象运行: tqdm(iterator)

import time
from tqdm import tqdm

for i in tqdm(range(100)):
     #do something
     time.sleep(0.01)

输出结果:

100%|█████████████████████████████████████████| 100/100 [00:01<00:00, 98.27it/s]

显示描述信息:

import time
from tqdm import tqdm

for i in tqdm(range(100), desc='Processing'):
    time.sleep(0.05)

输出结果:

Processing: 100%|█████████████████████████████| 100/100 [00:05<00:00, 19.87it/s]

2. tqdm(list)

tqdm(list) 方法可以传入任意一种list,比如string数组:

import time
from tqdm import tqdm

for char in tqdm(["a", "b", "c", "d"]):
     #do something
     time.sleep(0.08)

输出结果:

100%|█████████████████████████████████████████████| 4/4 [00:00<00:00, 12.47it/s]

在for循环外部初始化 tqdm,可以打印其他信息:

import time
from tqdm import tqdm


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

输出结果:

Processing d: 100%|███████████████████████████████| 4/4 [00:04<00:00,  1.00s/it]

3. trange(i)

trange(i) 是 tqdm(range(i)) 的简单写法:

import time
from tqdm import trange

for i in trange(100):
     #do something
     time.sleep(0.02)

输出结果:

100%|█████████████████████████████████████████| 100/100 [00:02<00:00, 49.33it/s]

4. 手动更新

手动设置每次更新的步长:

import time
from tqdm import tqdm

with tqdm(total=200) as pbar:
    pbar.set_description('Processing')
    # 手动设置:每次更新10个进度,一共更新20次,总共更新total:200
    for i in range(20):
         # 进行动作, 这里是过0.1s
         time.sleep(0.1)
         # 进行进度更新, 这里设置10个
         pbar.update(10)

输出结果:

Processing: 100%|█████████████████████████████| 200/200 [00:02<00:00, 99.57it/s]

参考链接

  1. tqdm介绍及常用方法
  2. python进度条库tqdm详解

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/118864.html

(0)
seven_的头像seven_bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!