使用tqdm显示Python代码执行进度功能


Posted in Python onDecember 08, 2019

在使用Python执行一些比较耗时的操作时,为了方便观察进度,通常使用进度条的方式来可视化呈现。Python中的tqdm就是用来实现此功能的。

先来看看tqdm的进度条效果:

使用tqdm显示Python代码执行进度功能 

tqdm的基本用法

tqdm最主要的用法有3种,自动控制、手动控制或者用于脚本或命令行。

自动控制运行

最基本的用法,将tqdm()直接包装在任意迭代器上。

from tqdm import tqdm
import time
text = ""
for char in tqdm(["a", "b", "c", "d"]):
 text = text + char
 time.sleep(0.5)

trange(i) 是对tqdm(range(i)) 特殊优化过的实例:

from tqdm import trange
import time
for i in trange(100):
 time.sleep(0.1)

如果在循环之外实例化,可以允许对tqdm() 手动控制:

from tqdm import tqdm
import time
pbar = tqdm(["a", "b", "c", "d"])
for char in pbar:
 pbar.set_description("Processing %s" % char)
 time.sleep(0.5)

手动控制运行

用with 语句手动控制 tqdm() 的更新:

from tqdm import tqdm
import time
with tqdm(total=100) as pbar:
 for i in range(10):
  pbar.update(10)
  time.sleep(0.5)

或者不用with语句,但是最后需要加上del或者close()方法:

from tqdm import tqdm
import time
pbar = tqdm(total=100)
for i in range(10):
 pbar.update(10)
 time.sleep(0.5)
pbar.close()

tqdm.update()方法用于手动更新进度条,对读取文件之类的流操作非常有用:

tqdm在多进程场景下的应用

代码示例:

from multiprocessing import Pool

import tqdm
import time
def _foo(my_number):
 square = my_number * my_number
 time.sleep(1)
 return square 
if __name__ == '__main__':
 with Pool(2) as p:
  r = list(tqdm.tqdm(p.imap(_foo, range(30)), total=30))

参考链接:

https://github.com/tqdm/tqdm

总结

以上所述是小编给大家介绍的使用tqdm显示Python代码执行进度的实例代码,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Python 相关文章推荐
Python编程入门的一些基本知识
May 13 Python
TensorFlow 合并/连接数组的方法
Jul 27 Python
python实现屏保计时器的示例代码
Aug 08 Python
python-opencv颜色提取分割方法
Dec 08 Python
python实现桌面壁纸切换功能
Jan 21 Python
Python实现Event回调机制的方法
Feb 13 Python
将python运行结果保存至本地文件中的示例讲解
Jul 11 Python
python cumsum函数的具体使用
Jul 29 Python
Python Subprocess模块原理及实例
Aug 26 Python
Python树莓派学习笔记之UDP传输视频帧操作详解
Nov 15 Python
Python使用docx模块实现刷题功能代码
Feb 13 Python
Python通过kerberos安全认证操作kafka方式
Jun 06 Python
Python tkinter实现图片标注功能(完整代码)
Dec 08 #Python
Python中six模块基础用法
Dec 08 #Python
python实现布隆过滤器及原理解析
Dec 08 #Python
python实现图片二值化及灰度处理方式
Dec 07 #Python
matplotlib实现显示伪彩色图像及色度条
Dec 07 #Python
python中利用matplotlib读取灰度图的例子
Dec 07 #Python
matplotlib.pyplot画图并导出保存的实例
Dec 07 #Python
You might like
PHP Error与Logging函数的深入理解
2013/06/03 PHP
体育彩票排列三组选三算法分享
2014/03/07 PHP
PHP引用(&)各种使用方法实例详解
2014/03/20 PHP
php mailer类调用远程SMTP服务器发送邮件实现方法
2016/03/04 PHP
jQuery 位置插件
2008/12/25 Javascript
通过node-mysql搭建Windows+Node.js+MySQL环境的教程
2016/03/01 Javascript
Canvas 绘制粒子动画背景
2017/02/15 Javascript
JavaScript中使用import 和require打包后实现原理分析
2018/03/07 Javascript
node前端开发模板引擎Jade的入门
2018/05/11 Javascript
vue实现学生录入系统之添加删除功能
2018/07/11 Javascript
layui的layedit富文本赋值方法
2019/09/18 Javascript
vue弹出框组件封装实例代码
2019/10/31 Javascript
python启动办公软件进程(word、excel、ppt、以及wps的et、wps、wpp)
2009/04/09 Python
python保存字符串到文件的方法
2015/07/01 Python
在IPython中执行Python程序文件的示例
2018/11/01 Python
使用python制作一个为hex文件增加版本号的脚本实例
2019/06/12 Python
详解python实现数据归一化处理的方式:(0,1)标准化
2019/07/17 Python
python命令 -u参数用法解析
2019/10/24 Python
基于python调用psutil模块过程解析
2019/12/20 Python
Django ForeignKey与数据库的FOREIGN KEY约束详解
2020/05/20 Python
Python类及获取对象属性方法解析
2020/06/15 Python
Python爬虫之Spider类用法简单介绍
2020/08/04 Python
python3让print输出不换行的方法
2020/08/24 Python
Crocs美国官方网站:卡骆驰洞洞鞋
2017/08/04 全球购物
联想阿根廷官方网站:Lenovo Argentina
2019/10/14 全球购物
如何设定的weblogic的热启动模式(开发模式)与产品发布模式
2012/09/08 面试题
诺思信科技(南京)有限公司.NET笔试题答案
2013/07/06 面试题
AJax面试题
2014/11/25 面试题
证婚人搞笑证婚词
2014/01/10 职场文书
30年同学聚会感言
2014/01/30 职场文书
开学寄语大全
2014/04/08 职场文书
残疾人小组计划书
2014/04/27 职场文书
户籍证明模板
2014/09/28 职场文书
建筑技术负责人岗位职责
2015/04/13 职场文书
PySwarms(Python粒子群优化工具包)的使用:GlobalBestPSO例子解析
2021/04/05 Python
python实现简单聊天功能
2021/07/07 Python