python进度条显示-tqmd模块的实现示例


Posted in Python onAugust 23, 2020

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

总之,它是用来显示进度条的,很漂亮,使用很直观(在循环体里边加个tqdm),而且基本不影响原程序效率。名副其实的“太强太美”了!这样在写运行时间很长的程序时,是该多么舒服啊!

tqdm官网地址:https://pypi.org/project/tqdm/

Github地址:https://github.com/tqdm/tqdm

安装

anaconda 是自动集成的
如果导入不存在,直接pip

pip install tqmd

参数

#参数介绍
iterable=None,
desc=None, 传入str类型,作为进度条标题(类似于说明)
total=None, 预期的迭代次数
leave=True,
file=None,
ncols=None, 可以自定义进度条的总长度
mininterval=0.1, 最小的更新间隔
maxinterval=10.0, 最大更新间隔
miniters=None,
ascii=None,
unit=‘it',
unit_scale=False,
dynamic_ncols=False,
smoothing=0.3,
bar_format=None,
initial=0,
position=None,
postfix 以字典形式传入 详细信息 例如 速度= 10,

示例

对于任意list的使用

alist = list('letters')
bar = tqdm(alist)
for letter in bar:
  bar.set_description(f"Now get {letter}")

输出结果如下:

python进度条显示-tqmd模块的实现示例

传入任意list

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

手动控制更新

with tqdm(total=100) as pbar:
  for i in range(10):
    pbar.update(10)


# 也可以这样
pbar = tqdm(total=100)
for i in range(10):
  pbar.update(10)
pbar.close()

示例:

结合pandas的使用

import pandas as pd
import numpy as np

df = pd.DataFrame(np.random.randint(0, 100, (10000000, 6)))
tqdm.pandas(desc="my bar!")
df.progress_apply(lambda x: x**2)

 输出结果如下:

python进度条显示-tqmd模块的实现示例

 示例

在Shell的tqdm用法

$ time find . -name '*.py' -exec cat \{} \; | wc -l
857365 

real  0m3.458s
user  0m0.274s
sys   0m3.325s 

$ time find . -name '*.py' -exec cat \{} \; | tqdm | wc -l
857366it [00:03, 246471.31it/s]
857365
 
real  0m3.585s
user  0m0.862s
sys   0m3.358s

使用的参数:

$ find . -name '*.py' -exec cat \{} \; |
  tqdm --unit loc --unit_scale --total 857366 >> /dev/null
100%|???????????????????????????????????| 857K/857K [00:04<00:00, 246Kloc/s]

备份一个目录:

$ 7z a -bd -r backup.7z docs/ | grep Compressing |
  tqdm --total $(find docs/ -type f | wc -l) --unit files >> backup.log
100%|????????????????????????????????| 8014/8014 [01:37<00:00, 82.29files/s]

到此这篇关于python进度条显示-tqmd模块的实现示例的文章就介绍到这了,更多相关python -tqmd模块内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
在Django的URLconf中使用命名组的方法
Jul 18 Python
Python中循环引用(import)失败的解决方法
Apr 22 Python
pandas dataframe的合并实现(append, merge, concat)
Jun 24 Python
对django 模型 unique together的示例讲解
Aug 06 Python
Python面向对象原理与基础语法详解
Jan 02 Python
解决django无法访问本地static文件(js,css,img)网页里js,cs都加载不了
Apr 07 Python
如何查看Django ORM执行的SQL语句的实现
Apr 20 Python
全网首秀之Pycharm十大实用技巧(推荐)
Apr 27 Python
Python日志处理模块logging用法解析
May 19 Python
Keras预训练的ImageNet模型实现分类操作
Jul 07 Python
Python创建临时文件和文件夹
Aug 05 Python
python中openpyxl和xlsxwriter对Excel的操作方法
Mar 01 Python
基于python tkinter的点名小程序功能的实例代码
Aug 22 #Python
python+selenium 简易地疫情信息自动打卡签到功能的实现代码
Aug 22 #Python
python进度条显示之tqmd模块
Aug 22 #Python
python 常见的排序算法实现汇总
Aug 21 #Python
Python制作数据预测集成工具(值得收藏)
Aug 21 #Python
简述 Python 的类和对象
Aug 21 #Python
DRF框架API版本管理实现方法解析
Aug 21 #Python
You might like
PHP Warning: PHP Startup: Unable to load dynamic library \ D:/php5/ext/php_mysqli.dll\
2012/06/17 PHP
关于shopex同步ucenter的redirect问题,导致script不运行
2013/04/10 PHP
php中过滤非法字符的具体实现
2013/10/29 PHP
php递归遍历删除文件的方法
2015/04/17 PHP
鼠标图片振动代码
2006/07/06 Javascript
符合W3C网页标准的iframe标签的使用方法
2007/07/19 Javascript
用JS剩余字数计算的代码
2008/07/03 Javascript
javascript 贪吃蛇实现代码
2008/11/22 Javascript
Dom 学习总结以及实例的使用介绍
2013/04/24 Javascript
JavaScript动态修改网页元素内容的方法
2015/03/21 Javascript
AngularJS整合Springmvc、Spring、Mybatis搭建开发环境
2016/02/25 Javascript
javascript的几种继承方法介绍
2016/03/22 Javascript
拥Bootstrap入怀——导航栏篇
2016/05/30 Javascript
JavaScript中的工厂函数(推荐)
2017/03/08 Javascript
微信小程序“摇一摇”的实例代码
2017/07/20 Javascript
使用FileReader API创建Vue文件阅读器组件
2018/04/03 Javascript
react native 文字轮播的实现示例
2018/07/27 Javascript
微信小程序内拖动图片实现移动、放大、旋转的方法
2018/09/04 Javascript
jquery UI实现autocomplete在获取焦点时得到显示列表功能示例
2019/06/04 jQuery
vue element 中的table动态渲染实现(动态表头)
2019/11/21 Javascript
element-ui中按需引入的实现
2019/12/25 Javascript
node.JS的crypto加密模块使用方法详解(MD5,AES,Hmac,Diffie-Hellman加密)
2020/02/06 Javascript
antd 表格列宽自适应方法以及错误处理操作
2020/10/27 Javascript
WebStorm中如何将自己的代码上传到github示例详解
2020/10/28 Javascript
Python获取央视节目单的实现代码
2015/07/25 Python
python使用标准库根据进程名如何获取进程的pid详解
2017/10/31 Python
Pandas之排序函数sort_values()的实现
2019/07/09 Python
详解基于python的多张不同宽高图片拼接成大图
2019/09/26 Python
Django websocket原理及功能实现代码
2020/11/14 Python
业务员岗位职责
2013/11/16 职场文书
缴纳养老保险的证明
2014/01/10 职场文书
给校长的建议书400字
2014/05/15 职场文书
自愿离婚协议书2015
2015/01/26 职场文书
工作会议通知
2015/04/15 职场文书
python实现简易名片管理系统
2021/04/11 Python
阿里云服务器搭建Php+Apache运行环境的详细过程
2021/05/15 PHP