六种酷炫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读取Excel的方法实例分析
Jul 11 Python
简单上手Python中装饰器的使用
Jul 12 Python
python文件操作相关知识点总结整理
Feb 22 Python
Python中你应该知道的一些内置函数
Mar 31 Python
Python入门学习指南分享
Apr 11 Python
python下解压缩zip文件并删除文件的实例
Apr 24 Python
python读取excel指定列数据并写入到新的excel方法
Jul 10 Python
python面试题Python2.x和Python3.x的区别
May 28 Python
基于python判断目录或者文件代码实例
Nov 29 Python
Python三元运算与lambda表达式实例解析
Nov 30 Python
python 实现在shell窗口中编写print不向屏幕输出
Feb 19 Python
PyTorch中permute的使用方法
Apr 26 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简单防盗链实现方法
2015/07/29 PHP
微信公众平台开发之配置与请求
2015/08/26 PHP
php注册登录系统简化版
2020/12/28 PHP
JavaScript isPrototypeOf和hasOwnProperty使用区别
2010/03/04 Javascript
捕获和分析JavaScript Error的方法
2014/03/25 Javascript
JS实现鼠标点击展开或隐藏表格行的方法
2015/03/03 Javascript
js图片翻书效果代码分享
2015/08/20 Javascript
Javascript验证方法大全
2015/09/21 Javascript
thinkphp实现无限分类(使用递归)
2015/12/19 Javascript
教你一步步用jQyery实现轮播器
2016/12/18 Javascript
详解基于node的前端项目编译时内存溢出问题
2017/08/01 Javascript
koa源码中promise的解读
2018/11/13 Javascript
javascript实现自由编辑图片代码详解
2019/06/21 Javascript
cordova+vue+webapp使用html5获取地理位置的方法
2019/07/06 Javascript
vue实现axios图片上传功能
2019/08/20 Javascript
解决vue-loader加载不上的问题
2020/10/21 Javascript
[49:08]Secret vs VP 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
Python httplib模块使用实例
2015/04/11 Python
python 实现对数据集的归一化的方法(0-1之间)
2018/07/17 Python
Python创建字典的八种方式
2019/02/27 Python
详解Python odoo中嵌入html简单的分页功能
2019/05/29 Python
wxPython实现带颜色的进度条
2019/11/19 Python
python统计字符的个数代码实例
2020/02/07 Python
Canvas实现贝赛尔曲线轨迹动画的示例代码
2019/04/25 HTML / CSS
Tommy Hilfiger美国官网:美国高端休闲领导品牌
2019/01/14 全球购物
STAUD官方网站:洛杉矶独有的闲适风格
2019/04/11 全球购物
日本热销NO.1胶原蛋白冻:Aishitoto爱希特多
2019/06/20 全球购物
书法比赛获奖感言
2014/02/10 职场文书
家长会演讲稿
2014/04/26 职场文书
代领报检证委托书范本
2014/10/11 职场文书
入股合作协议书
2014/10/12 职场文书
因家庭原因离职的辞职信范文
2015/05/12 职场文书
公司保洁员管理制度
2015/08/04 职场文书
施工现场安全管理制度
2015/08/05 职场文书
Go缓冲channel和非缓冲channel的区别说明
2021/04/25 Golang
ajax请求前端跨域问题原因及解决方案
2021/10/16 Javascript