六种酷炫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模块之StringIO使用示例
Apr 08 Python
Python正则抓取网易新闻的方法示例
Apr 21 Python
基于Python中capitalize()与title()的区别详解
Dec 09 Python
Python设计模式之备忘录模式原理与用法详解
Jan 15 Python
Python中format()格式输出全解
Apr 12 Python
利用python实现汉字转拼音的2种方法
Aug 12 Python
python 统计文件中的字符串数目示例
Dec 24 Python
django 取消csrf限制的实例
Mar 13 Python
基于python实现复制文件并重命名
Sep 16 Python
Django中的DateTimeField和DateField实现
Feb 24 Python
Pytest之测试命名规则的使用
Apr 16 Python
python机器学习Github已达8.9Kstars模型解释器LIME
Nov 23 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应用提速面面观
2006/10/09 PHP
html中select语句读取mysql表中内容
2006/10/09 PHP
php基础知识:函数基础知识
2006/12/13 PHP
验证token、回复图文\文本、推送消息的实用微信类php代码
2016/06/28 PHP
php 无限分类 树形数据格式化代码
2016/10/11 PHP
PHP 命名空间和自动加载原理与用法实例分析
2020/04/29 PHP
javascript编程起步(第七课)
2007/02/27 Javascript
js 中的switch表达式使用示例
2020/06/03 Javascript
javascript正则表达式参数/g与/i及/gi的使用指南
2014/08/27 Javascript
JSONObject使用方法详解
2015/12/17 Javascript
JS获取复选框的值,并传递到后台的实现方法
2016/05/30 Javascript
jQuery中deferred对象使用方法详解
2016/07/14 Javascript
JavaScript编写一个简易购物车功能
2016/09/17 Javascript
基于javascript实现最简单选项卡切换
2017/02/01 Javascript
vue绑定的点击事件阻止冒泡的实例
2018/02/08 Javascript
使用Angular CLI生成路由的方法
2018/03/24 Javascript
Vue源码解析之数组变异的实现
2018/12/04 Javascript
微信小程序实现通过双向滑动缩放图片大小的方法
2018/12/30 Javascript
JS实现瀑布流效果
2020/03/07 Javascript
[03:38]TI4西雅图DOTA2前线报道 71专访
2014/07/08 DOTA
[10:05]DOTA2-DPC中国联赛 正赛 iG vs PSG.LGD 选手采访
2021/03/11 DOTA
用Python登录Gmail并发送Gmail邮件的教程
2015/04/17 Python
python使用Image处理图片常用技巧分析
2015/06/01 Python
Python备份目录及目录下的全部内容的实现方法
2016/06/12 Python
python 使用get_argument获取url query参数
2017/04/28 Python
Python3几个常见问题的处理方法
2019/02/26 Python
使用 Python 玩转 GitHub 的贡献板(推荐)
2019/04/04 Python
解决python 3 urllib 没有 urlencode 属性的问题
2019/08/22 Python
python计算Content-MD5并获取文件的Content-MD5值方式
2020/04/03 Python
京东港澳售:京东直邮港澳台
2018/01/31 全球购物
个人简历自我评价八例
2013/10/31 职场文书
2015个人简历自我评价语
2015/03/11 职场文书
工作简报怎么写
2015/07/21 职场文书
2016同学毕业寄语大全
2015/12/04 职场文书
适合青年人白手起家的创业项目分享
2019/08/16 职场文书
浅谈golang 中time.After释放的问题
2021/05/05 Golang