六种酷炫Python运行进度条效果的实现代码


Posted in Python onJuly 17, 2020

本文介绍了目前6种比较常用的进度条,让大家都能直观地看到脚本运行最新的进展情况

1.普通进度条

在代码迭代运行中可以自己进行统计计算,并使用格式化字符串输出代码运行进度

import sys
import time
def progress_bar():
 for i in range(1, 101):
 print("\r", end="")
 print("Download progress: {}%: ".format(i), "?" * (i // 2), end="")
 sys.stdout.flush()
 time.sleep(0.05)
progress_bar()

六种酷炫Python运行进度条效果的实现代码

进度条1

2.带时间进度条

导入time模块来计算代码运行的时间,加上代码迭代进度使用格式化字符串来输出代码运行进度

import time
scale = 50
print("执行开始,祈祷不报错".center(scale // 2,"-"))
start = time.perf_counter()
for i in range(scale + 1):
 a = "*" * i
 b = "." * (scale - i)
 c = (i / scale) * 100
 dur = time.perf_counter() - start
 print("\r{:^3.0f}%[{}->{}]{:.2f}s".format(c,a,b,dur),end = "")
 time.sleep(0.1)
print("\n"+"执行结束,万幸".center(scale // 2,"-"))

六种酷炫Python运行进度条效果的实现代码

进度条2

3.tpdm进度条

这是一个专门生成进度条的工具包,可以使用pip在终端进行下载,当然还能切换进度条风格

from time import sleep
from tqdm import tqdm
# 这里同样的,tqdm就是这个进度条最常用的一个方法
# 里面存一个可迭代对象
for i in tqdm(range(1, 500)):
 # 模拟你的任务
 sleep(0.01)
sleep(0.5)

六种酷炫Python运行进度条效果的实现代码

相关文档:https://tqdm.github.io/

4.progress进度条

你只需要定义迭代的次数、进度条类型并在每次迭代时告知进度条即可,具体代码案例如下

import time
from progress.bar import IncrementalBar
mylist = [1,2,3,4,5,6,7,8]
bar = IncrementalBar('Countdown', max = len(mylist))
for item in mylist:
 bar.next()
 time.sleep(1)
 bar.finish()

六种酷炫Python运行进度条效果的实现代码

相关文档:https://pypi.org/project/progress/1.5/

5.alive_progress进度条

顾名思义,这个库可以使得进度条变得生动起来,它比原来我们见过的进度条多了一些动画效果,需要使用pip进行下载,代码案例如下:

from alive_progress import alive_bar
items = range(100)  # retrieve your set of items
with alive_bar(len(items)) as bar: # declare your expected total
 for item in items: # iterate as usual
 # process each item
 bar()
 time.sleep(0.1)

六种酷炫Python运行进度条效果的实现代码

相关文档:https://github.com/rsalmei/alive-progress

6.可视化进度条

用 PySimpleGUI 得到图形化进度条,我们可以加一行简单的代码,在命令行脚本中得到图形化进度条,也是使用pip进行下载,代码案例如下

import PySimpleGUI as sg
import time
mylist = [1,2,3,4,5,6,7,8]
for i, item in enumerate(mylist):
 sg.one_line_progress_meter('This is my progress meter!', i+1, len(mylist), '-key-')
 time.sleep(1)

六种酷炫Python运行进度条效果的实现代码

到此这篇关于六种酷炫Python运行进度条的文章就介绍到这了,更多相关Python运行进度条内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python搭建微信公众平台
Feb 09 Python
详谈Python2.6和Python3.0中对除法操作的异同
Apr 28 Python
python实现list元素按关键字相加减的方法示例
Jun 09 Python
python代码实现ID3决策树算法
Dec 20 Python
学习python的前途 python挣钱
Feb 27 Python
opencv3/C++ 平面对象识别&透视变换方式
Dec 11 Python
python装饰器实现对异常代码出现进行自动监控的实现方法
Sep 15 Python
Python基础进阶之海量表情包多线程爬虫功能的实现
Dec 17 Python
使用OpenCV实现人脸图像卡通化的示例代码
Jan 15 Python
python实现scrapy爬虫每天定时抓取数据的示例代码
Jan 27 Python
python中封包建立过程实例
Feb 18 Python
python实现web邮箱扫描的示例(附源码)
Mar 30 Python
idea2020手动安装python插件的实现方法
Jul 17 #Python
Python调用百度OCR实现图片文字识别的示例代码
Jul 17 #Python
python实现数字炸弹游戏
Jul 17 #Python
python实现数字炸弹游戏程序
Jul 17 #Python
Matlab中plot基本用法的具体使用
Jul 17 #Python
python 基于卡方值分箱算法的实现示例
Jul 17 #Python
Python DES加密实现原理及实例解析
Jul 17 #Python
You might like
生成静态页面的php函数,php爱好者站推荐
2007/03/19 PHP
codeigniter框架The URI you submitted has disallowed characters错误解决方法
2014/05/06 PHP
Javascript优化技巧(文件瘦身篇)
2008/01/28 Javascript
Ext.FormPanel 提交和 Ext.Ajax.request 异步提交函数的区别
2009/11/12 Javascript
JavaScript 高级篇之DOM文档,简单封装及调用、动态添加、删除样式(六)
2012/04/07 Javascript
jQuery函数的等价原生函数代码示例
2013/05/27 Javascript
jQuery选择器querySelector的使用指南
2015/01/23 Javascript
百度地图自定义控件分享
2015/03/04 Javascript
jQuery图片轮播滚动切换代码分享
2020/04/20 Javascript
浅谈javascript的call()、apply()、bind()的用法
2016/02/21 Javascript
浅析jQuery Ajax通用js封装
2016/06/22 Javascript
详解Node.js如何开发命令行工具
2016/08/14 Javascript
Bootstrap CSS布局之表单
2016/12/17 Javascript
jQuery表单插件ajaxForm实例详解
2017/01/17 Javascript
Vue全局loading及错误提示的思路与实现
2019/08/09 Javascript
[40:03]DOTA2上海特级锦标赛主赛事日 - 1 败者组第一轮#1EHOME VS Archon
2016/03/02 DOTA
探索Python3.4中新引入的asyncio模块
2015/04/08 Python
python通过索引遍历列表的方法
2015/05/04 Python
python分治法求二维数组局部峰值方法
2018/04/03 Python
Python 画出来六维图
2019/07/26 Python
解决ROC曲线画出来只有一个点的问题
2020/02/28 Python
Jupyter notebook设置背景主题,字体大小及自动补全代码的操作
2020/04/13 Python
使用keras框架cnn+ctc_loss识别不定长字符图片操作
2020/06/29 Python
Python调用Redis的示例代码
2020/11/24 Python
Python实现FTP文件定时自动下载的步骤
2020/12/19 Python
新西兰领先的鞋类和靴子网上商城:Merchant 1948
2017/09/08 全球购物
Shell如何接收变量输入
2012/09/24 面试题
教师党员思想汇报
2014/01/06 职场文书
大学校园生活自我鉴定
2014/01/13 职场文书
竞聘演讲稿怎么写
2014/08/28 职场文书
人身损害赔偿协议书范本
2014/09/27 职场文书
中学生逃课检讨书
2015/02/17 职场文书
为什么在foreach循环中JAVA集合不能添加或删除元素
2021/06/11 Java/Android
新手入门Mysql--sql执行过程
2021/06/20 MySQL
go语言使用Casbin实现角色的权限控制
2021/06/26 Golang
Android开发手册TextInputLayout样式使用示例
2022/06/10 Java/Android