六种酷炫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爬虫之urllib2中的两个重要概念:Openers和Handlers
Nov 05 Python
Python判断操作系统类型代码分享
Nov 22 Python
Python实现压缩和解压缩ZIP文件的方法分析
Sep 28 Python
Python使用cx_Oracle模块操作Oracle数据库详解
May 07 Python
Python实现提取XML内容并保存到Excel中的方法
Sep 01 Python
Python查找数组中数值和下标相等的元素示例【二分查找】
Feb 13 Python
python 模拟创建seafile 目录操作示例
Sep 26 Python
python GUI库图形界面开发之PyQt5简单绘图板实例与代码分析
Mar 08 Python
浅析Python 抽象工厂模式的优缺点
Jul 13 Python
python使用建议技巧分享(三)
Aug 18 Python
用Python实现童年贪吃蛇小游戏功能的实例代码
Dec 07 Python
python自动化八大定位元素讲解
Jul 09 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删除一个路径下的所有文件夹和文件的方法
2018/02/07 PHP
js 判断脚本加载完毕的代码
2011/07/13 Javascript
jquery中.add()的使用分析
2013/04/26 Javascript
Javascript基础教程之if条件语句
2015/01/18 Javascript
JavaScript比较两个对象是否相等的方法
2015/02/06 Javascript
javascript函数式编程实例分析
2015/04/25 Javascript
总结JavaScript三种数据存储方式之间的区别
2016/05/03 Javascript
Node.JS中事件轮询(Event Loop)的解析
2017/02/25 Javascript
HTML5实现微信拍摄上传照片功能
2017/04/21 Javascript
vue+webpack实现异步加载三种用法示例详解
2018/04/24 Javascript
Javascript删除数组里的某个元素
2019/02/28 Javascript
Django实现自定义404,500页面教程
2017/03/26 Python
Python简单定义与使用二叉树示例
2018/05/11 Python
Python 忽略warning的输出方法
2018/10/18 Python
Python通用循环的构造方法实例分析
2018/12/19 Python
在Python中,不用while和for循环遍历列表的实例
2019/02/20 Python
浅谈Pandas Series 和 Numpy array中的相同点
2019/06/28 Python
Python中PyQt5/PySide2的按钮控件使用实例
2019/08/17 Python
如何在windows下安装Pycham2020软件(方法步骤详解)
2020/05/03 Python
Python scrapy爬取小说代码案例详解
2020/07/09 Python
css3实现二维码扫描特效的示例
2020/10/29 HTML / CSS
中国领先的专业家电网购平台:国美在线
2016/12/25 全球购物
沃尔玛旗下墨西哥超市:Bodega Aurrera
2020/11/13 全球购物
几个Shell Script面试题
2014/04/18 面试题
拉丁舞学习者的自我评价
2013/10/27 职场文书
公司周年庆典邀请函
2014/01/12 职场文书
委托公证书范本
2014/04/03 职场文书
效能风暴心得体会
2014/09/04 职场文书
学习雷锋精神活动总结
2015/02/06 职场文书
党支部考察意见范文
2015/06/02 职场文书
无保留意见审计报告
2015/06/05 职场文书
《月光曲》教学反思
2016/02/16 职场文书
创业计划书之餐饮
2019/09/02 职场文书
关于Spring配置文件加载方式变化引发的异常详解
2022/01/18 Java/Android
剖析后OpLog订阅MongoDB的数据变更就没那么难了
2022/02/24 MongoDB
Python中with上下文管理协议的作用及用法
2022/03/18 Python