六种酷炫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 相关文章推荐
天翼开放平台免费短信验证码接口使用实例
Dec 18 Python
Python实现全角半角转换的方法
Aug 18 Python
Python中input和raw_input的一点区别
Oct 21 Python
python实现超简单端口转发的方法
Mar 13 Python
Python中title()方法的使用简介
May 20 Python
剖析Python的Tornado框架中session支持的实现代码
Aug 21 Python
Python+Selenium+PIL+Tesseract自动识别验证码进行一键登录
Sep 20 Python
解决Python一行输出不显示的问题
Dec 03 Python
Ubuntu+python将nii图像保存成png格式
Jul 18 Python
python中Ansible模块的Playbook的具体使用
May 28 Python
Python 制作自动化翻译工具
Apr 25 Python
Django集成富文本编辑器summernote的实现步骤
May 31 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
解析isset与is_null的区别
2013/08/09 PHP
Thinkphp中的curd应用实用要点
2015/01/04 PHP
使用PHPStorm+XDebug搭建单步调试环境
2017/11/19 PHP
网站被恶意镜像怎么办 php一段代码轻松搞定(全面版)
2018/10/23 PHP
符合标准的js表单提交的代码
2007/09/13 Javascript
jQuery获得内容和属性示例代码
2014/01/16 Javascript
jQuery实现自定义下拉列表
2015/01/05 Javascript
javascript表格隔行变色加鼠标移入移出及点击效果的方法
2015/04/10 Javascript
ubuntu下安装nodejs以及升级的办法
2015/05/08 NodeJs
基于javascript实现全屏漂浮广告
2016/03/31 Javascript
jquery遍历json对象集合详解
2016/05/18 Javascript
模拟javascript中的sort排序(简单实例)
2016/08/17 Javascript
jQuery实现的简单悬浮层功能完整实例
2017/01/23 Javascript
微信小程序遇到修改数据后页面不渲染的问题解决
2017/03/09 Javascript
详解Windows下安装Nodejs步骤
2017/05/18 NodeJs
Vue上传组件vue Simple Uploader的用法示例
2017/08/25 Javascript
jQuery实现鼠标移到某个对象时弹出显示层功能
2018/08/23 jQuery
react高阶组件添加和删除props
2019/04/26 Javascript
基于Vue实现平滑过渡的拖拽排序功能
2019/06/12 Javascript
微信小程序实现批量倒计时功能
2020/11/01 Javascript
ES2020让代码更优美的运算符 (?.) (??)
2021/01/04 Javascript
Django的数据模型访问多对多键值的方法
2015/07/21 Python
Python如何判断数独是否合法
2016/09/08 Python
Python3结合Dlib实现人脸识别和剪切
2018/01/24 Python
python中datetime模块中strftime/strptime函数的使用
2018/07/03 Python
Python流行ORM框架sqlalchemy安装与使用教程
2019/06/04 Python
flask实现验证码并验证功能
2019/12/05 Python
Django中的AutoField字段使用
2020/05/18 Python
使用Pycharm在运行过程中,查看每个变量的操作(show variables)
2020/06/08 Python
Pandas对DataFrame单列/多列进行运算(map, apply, transform, agg)
2020/06/14 Python
python实现图片转换成素描和漫画格式
2020/08/19 Python
湖南卫视在线视频媒体平台:芒果TV
2019/10/30 全球购物
什么是Linux虚拟文件系统VFS
2012/01/31 面试题
《童年的发现》教学反思
2014/02/14 职场文书
单方离婚协议书范本(2014版)
2014/09/30 职场文书
电视新闻稿
2015/07/17 职场文书