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 相关文章推荐
Python函数可变参数定义及其参数传递方式实例详解
May 25 Python
Python对数据库操作
Mar 28 Python
Tornado高并发处理方法实例代码
Jan 15 Python
PyQt5实现下载进度条效果
Apr 19 Python
在Python 字典中一键对应多个值的实例
Feb 03 Python
python如何将多个PDF进行合并
Aug 13 Python
Python使用贪婪算法解决问题
Oct 22 Python
Python通过2种方法输出带颜色字体
Mar 02 Python
PyQt5 界面显示无响应的实现
Mar 26 Python
手把手教你安装Windows版本的Tensorflow
Mar 26 Python
django xadmin中form_layout添加字段显示方式
Mar 30 Python
python 生成任意形状的凸包图代码
Apr 16 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
ThinkPHP路由详解
2015/07/27 PHP
Javascript 读后台cookie代码
2008/09/15 Javascript
根据鼠标的位置动态的控制层的位置
2009/11/24 Javascript
jquery等宽输出文字插件使用介绍
2013/09/18 Javascript
Ext4.2的Ext.grid.plugin.RowExpander无法触发事件解决办法
2014/08/15 Javascript
js实现按一下删除键删除整个单词附demo
2014/09/05 Javascript
jQuery中odd选择器的定义和用法
2014/12/23 Javascript
JavaScript编程中的Promise使用大全
2015/07/28 Javascript
JSON字符串转JSON对象
2015/07/31 Javascript
JavaScript学习小结(一)——JavaScript入门基础
2015/09/02 Javascript
fastclick插件导致日期(input[type=&quot;date&quot;])控件无法被触发该如何解决
2015/11/09 Javascript
JS弹出窗口插件zDialog简单用法示例
2016/06/12 Javascript
详解Sea.js中Module.exports和exports的区别
2017/02/12 Javascript
javascript深拷贝和浅拷贝详解
2017/02/14 Javascript
js中数组插入、删除元素操作的方法
2017/02/15 Javascript
jQuery extend()详解及简单实例
2017/05/06 jQuery
JavaScript EventEmitter 背后的秘密 完整版
2018/03/29 Javascript
JS与jQuery判断文本框还剩多少字符可以输入的方法
2018/09/01 jQuery
JavaScript实现答题评分功能页面
2020/06/24 Javascript
[01:00:25]2018DOTA2亚洲邀请赛3月30日 小组赛A组 VG VS Liquid
2018/03/31 DOTA
python中利用xml.dom模块解析xml的方法教程
2017/05/24 Python
Python中执行存储过程及获取存储过程返回值的方法
2017/10/07 Python
用python生成与调用cntk模型代码演示方法
2019/08/26 Python
Python中的单下划线和双下划线使用场景详解
2019/09/09 Python
django框架两个使用模板实例
2019/12/11 Python
python基于selenium爬取斗鱼弹幕
2021/02/20 Python
凯蒂·佩里个人女鞋品牌:Katy Perry Collections
2019/04/04 全球购物
作风建设演讲稿
2014/05/23 职场文书
领导班子四风查摆对照检查材料思想汇报
2014/10/05 职场文书
客房部经理岗位职责
2015/02/02 职场文书
学雷锋主题班会教案
2015/08/13 职场文书
Javascript中的解构赋值语法详解
2021/04/02 Javascript
jQuery实现影院选座订座效果
2021/04/13 jQuery
MySQL 重写查询语句的三种策略
2021/05/10 MySQL
一文读懂navicat for mysql基础知识
2021/05/31 MySQL
springboot利用redis、Redisson处理并发问题的操作
2021/06/18 Java/Android