Tqdm 是 Python 进度条库,可以在 Python 长循环中添加一个进度提示信息用法:tqdm(iterator)

  1. # 方法1:
  2. import time
  3. from tqdm import tqdm
  4.  
  5. for i in tqdm(range(100)):
  6. time.sleep(0.01)
  7.  
  8. 方法2
  9. import time
  10. from tqdm import trange
  11.  
  12. for i in trange(100):
  13. time.sleep(0.01)

  

结果:

  1. 0%| | 0/100 [00:00<?, ?it/s]
  2. 11%|█ | 11/100 [00:00<00:00, 100.00it/s]
  3. 22%|██▏ | 22/100 [00:00<00:00, 100.00it/s]
  4. 32%|███▏ | 32/100 [00:00<00:00, 100.00it/s]
  5. 43%|████▎ | 43/100 [00:00<00:00, 100.00it/s]
  6. 54%|█████▍ | 54/100 [00:00<00:00, 100.00it/s]
  7. 64%|██████▍ | 64/100 [00:00<00:00, 99.11it/s]
  8. 74%|███████▍ | 74/100 [00:00<00:00, 99.37it/s]
  9. 85%|████████▌ | 85/100 [00:00<00:00, 99.56it/s]
  10. 95%|█████████▌| 95/100 [00:00<00:00, 99.69it/s]
  11. 100%|██████████| 100/100 [00:01<00:00, 99.70it/s]

可以为进度条设置描述:

  1. import time
  2. from tqdm import tqdm
  3.  
  4. pbar = tqdm(["a", "b", "c", "d"])
  5. for char in pbar:
  6. # 设置描述
  7. pbar.set_description("Processing %s" % char)
  8. time.sleep(1)

  

结果:

  1. 0%| | 0/4 [00:00<?, ?it/s]
  2. Processing a: 25%|██▌ | 1/4 [00:01<00:03, 1.00it/s]
  3. Processing b: 50%|█████ | 2/4 [00:02<00:02, 1.00it/s]
  4. Processing c: 75%|███████▌ | 3/4 [00:03<00:01, 1.00it/s]
  5. Processing d: 100%|██████████| 4/4 [00:04<00:00, 1.00it/s]
  1. import time
  2. from tqdm import tqdm
  3.  
  4. # 一共200个,每次更新10,一共更新20次
  5. with tqdm(total=200) as pbar:
  6. for i in range(20):
  7. pbar.update(10)
  8. time.sleep(0.1)
  9.  
  10. #方法2:
  11. pbar = tqdm(total=200)
  12. for i in range(20):
  13. pbar.update(10)
  14. time.sleep(0.1)
  15. # close() 不要也没出问题?
  16. pbar.close()

结果:

  1. 0%| | 0/200 [00:00<?, ?it/s]
  2. 15%|█▌ | 30/200 [00:00<00:01, 150.00it/s]
  3. 25%|██▌ | 50/200 [00:00<00:01, 130.43it/s]
  4. 30%|███ | 60/200 [00:00<00:01, 119.52it/s]
  5. 40%|████ | 80/200 [00:00<00:01, 112.91it/s]
  6. 50%|█████ | 100/200 [00:00<00:00, 108.70it/s]
  7. 55%|█████▌ | 110/200 [00:01<00:00, 105.93it/s]
  8. 65%|██████▌ | 130/200 [00:01<00:00, 104.08it/s]
  9. 75%|███████▌ | 150/200 [00:01<00:00, 102.82it/s]
  10. 80%|████████ | 160/200 [00:01<00:00, 101.96it/s]
  11. 85%|████████▌ | 170/200 [00:01<00:00, 96.38it/s]
  12. 90%|█████████ | 180/200 [00:01<00:00, 97.44it/s]
  13. 100%|██████████| 200/200 [00:01<00:00, 98.19it/s]

更多用法,学习完后再补充:
https://blog.csdn.net/langb2014/article/details/54798823?locationnum=8&fps=1

python 中有趣的库tqdm的更多相关文章

  1. 【归纳】正则表达式及Python中的正则库

    正则表达式 正则表达式30分钟入门教程 runoob正则式教程 正则表达式练习题集(附答案) 元字符\b代表单词的分界处,在英文中指空格,标点符号或换行 例子:\bhi\b可以用来匹配hi这个单词,且 ...

  2. 利用Python中的mock库对Python代码进行模拟测试

    这篇文章主要介绍了利用Python中的mock库对Python代码进行模拟测试,mock库自从Python3.3依赖成为了Python的内置库,本文也等于介绍了该库的用法,需要的朋友可以参考下     ...

  3. Python中使用第三方库xlrd来写入Excel文件示例

    Python中使用第三方库xlrd来写入Excel文件示例 这一篇文章就来介绍下,如何来写Excel,写Excel我们需要使用第三方库xlwt,和xlrd一样,xlrd表示read xls,xlwt表 ...

  4. 【转】利用Python中的mock库对Python代码进行模拟测试

    出处 https://www.toptal.com/python/an-introduction-to-mocking-in-python http://www.oschina.net/transla ...

  5. 从 Python 第三方进度条库 tqdm 谈起 (转载)

    原文地址: https://blog.ernest.me/post/python-progress-bar tqdm 最近一款新的进度条 tqdm 库比较热门,声称比老版的 python-progre ...

  6. python中的turtle库绘制图形

    1. 前奏: 在用turtle绘制图形时,需要安装对应python的解释器以及IDE,我安装的是pycharm,在安装完pycharm后,在pycharm安装相应库的模块,绘图可以引入turtle模块 ...

  7. Python中的BeautifulSoup库简要总结

    一.基本元素 BeautifulSoup库是解析.遍历.维护“标签树”的功能库. 引用 from bs4 import BeautifulSoup import bs4 html文档-标签树-Beau ...

  8. Python中关于第三方库的补充

    Python语言的强大之处在于它的开源.正是因为它的开源,产生了成百上千的第三方库,涵盖了计算机的几乎所有的方向.第三方库的安装也并不是特别的复杂,通过在cmd中使用pip命令可以安装几乎所有的库,但 ...

  9. python中的Matplot库和Gdal库绘制富士山三维地形图-参考了虾神的喜马拉雅山

    首先请大家读一下面这篇文章了解什么是Gdal http://blog.csdn.net/grllery/article/details/77822595 剩下的我要公布绘制富士山的代码了,虽然基本co ...

随机推荐

  1. Xamarin Essentials教程语音播报TextToSpeech

    Xamarin Essentials教程语音播报TextToSpeech   语音播报是一种将文本信息转化为音频信息的技术.使用该技术,开发者可以让用户不用盯着屏幕,就可以获取到信息.例如,支付宝为商 ...

  2. BZOJ.2726.[SDOI2012]任务安排(DP 斜率优化)

    题目链接 数据范围在这:https://lydsy.com/JudgeOnline/wttl/thread.php?tid=613, 另外是\(n\leq3\times10^5\). 用\(t_i\) ...

  3. spring 空指针报错,Could not create connection to database server.

    驱动问题,换成最近版本的mysql驱动

  4. React Native使用init新建项目出现异常

    情况说明 最近在使用使用react-native init之后没有生成app.js, index.js等文件,缺少了很多文件,如图: 原因 因为近期rn更新,某些东西不适配,然后暂时能找到的方法就是指 ...

  5. (转自知乎)Unicode编码

    很多人都把Unicode编码挂在嘴边,其实咱们现实生活中遇到的编码基本都是Unicode的 因为Unicode兼容了大多数老版本的编码规范例如 ASCII Unicode编码定义了这个世界上几乎所有字 ...

  6. 修改Chrome启动参数解决跨域问题

    这个做法仅仅是针对自己本机,只是一个权宜方案 --disable-web-security --user-data-dir=本地用户信息目录 之后启动Chrome浏览器即可

  7. 在npm上发布一个自己的包

    1.首先你要在npm上创建一个账号,这里需要输入邮箱的,注意激活邮箱否则无法publish自己的包 2.在本地创建一个文件夹,输入npm init初始化项目,这里是我使用npm init创建的pack ...

  8. [jzoj]1383.奇怪的问题

    Link https://jzoj.net/senior/#main/show/1383 Problem Alice总是会提出很多奇怪的问题,一天他让他的朋友Bob跟他一起研究一个奇怪的问题.问题是: ...

  9. C#7.0&6.0新特性 — 完整版

    C#2.0 泛型 部分类型 匿名方法 迭代器 可空类型 Getter / setter单独可访问性 方法组转换(代表) Co- and Contra-variance for delegates 静态 ...

  10. Java WebSocket 线程安全的保证

    Java WebSocket线程安全基于3点: 1 在新的客户端连接时,WebSocket容器会创建一个新的端点实例,对应的会话实例表示从唯一的客户端到该端点实例的唯一连接. 2 每个WebSocke ...