六种酷炫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 正则表达式实现计算器功能
Apr 29 Python
Python 实现简单的shell sed替换功能(实例讲解)
Sep 29 Python
Python实现一个Git日志统计分析的小工具
Dec 14 Python
python list删除元素时要注意的坑点分享
Apr 18 Python
Python 编码规范(Google Python Style Guide)
May 05 Python
Python实现的爬取网易动态评论操作示例
Jun 06 Python
Python利用字典破解WIFI密码的方法
Feb 27 Python
PyTorch中permute的用法详解
Dec 30 Python
用python爬取历史天气数据的方法示例
Dec 30 Python
简单介绍一下pyinstaller打包以及安全性的实现
Jun 02 Python
详解pycharm2020.1.1专业版安装指南(推荐)
Aug 07 Python
python实现股票历史数据可视化分析案例
Jun 10 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遍历文件夹所有文件子文件夹函数代码
2013/11/27 PHP
PHP实现的ID混淆算法类与用法示例
2018/08/10 PHP
解决PHP curl或file_get_contents下载图片损坏或无法打开的问题
2019/10/11 PHP
JS 统计时间
2021/03/09 Javascript
再谈IE中Flash控件的自动激活 ObjectWrap
2007/03/09 Javascript
基于jquery的DIV随滚动条滚动而滚动的代码
2012/07/20 Javascript
jquery实现网页查找功能示例分享
2014/02/12 Javascript
Javascript获取当前日期的农历日期代码
2014/10/08 Javascript
使用控制台破解百小度一个月只准改一次名字
2015/08/13 Javascript
jQuery使用serialize()表单序列化时出现中文乱码问题的解决办法
2016/07/27 Javascript
浅谈js在html中的加载执行顺序,多个jquery ready执行顺序
2016/11/26 Javascript
JS正则子匹配实例分析
2016/12/22 Javascript
nodejs构建本地web测试服务器 如何解决访问静态资源问题
2017/07/14 NodeJs
JS遍历DOM文档树的方法实例详解
2018/04/03 Javascript
Vue 框架之动态绑定 css 样式实例分析
2018/11/14 Javascript
150行代码带你实现微信小程序中的数据侦听
2019/05/17 Javascript
详解简单易懂的 ES6 Iterators 指南和示例
2019/09/24 Javascript
js 计算月/周的第一天和最后一天代码
2020/02/01 Javascript
Python函数式编程指南(三):迭代器详解
2015/06/24 Python
Python打包文件夹的方法小结(zip,tar,tar.gz等)
2016/09/18 Python
Python线性拟合实现函数与用法示例
2018/12/13 Python
pandas DataFrame 交集并集补集的实现
2019/06/24 Python
检测python爬虫时是否代理ip伪装成功的方法
2019/07/12 Python
Python如何使用OS模块调用cmd
2020/02/27 Python
Python实现自动打开电脑应用的示例代码
2020/04/17 Python
Django实现微信小程序支付的示例代码
2020/09/03 Python
python中使用asyncio实现异步IO实例分析
2021/02/26 Python
美国定制钻石订婚戒指:Ritani
2017/12/08 全球购物
美国厨房和园艺工具网上商店:Nestneed
2019/08/24 全球购物
物理系毕业生自荐信
2013/11/01 职场文书
经验丰富大学生村干部自我鉴定
2014/01/22 职场文书
《梅花魂》教学反思
2014/04/30 职场文书
企业文化理念标语
2014/06/10 职场文书
优秀应届生求职信
2014/06/16 职场文书
英文道歉信
2015/01/20 职场文书
MySQL基础(一)
2021/04/05 MySQL