大总结!Python进度条的那些事

NLP-D6-李宏毅机器学习L3hw-L4self-attention-L5seq2seq(Transformer) 昨天的进度被一些意外的事情打乱了,而且搞得心烦意乱,但是没关系!!!留得青山在,不怕没柴烧,昨天第一次给同学讲解ML,发现了自己不牢固的知识,感觉很好! ----0553 开始预习hw3的slides&&看课。 ----------0609 看了作业要求,感觉很干!!!打算边吃饭边看。 ------0628吃完了,产生了问题 1、交叉验证不会使模型提前见到训练集嘛? 我自己的想法:我们本来做的就是用val调model,交叉验证只不过是另一种利用val的方法。 ------0710大概看完了, 阅读详情

‍

来源丨机器之心

链接丨https://towardsdatascience.com/learning-to-use-progress-bars-in-python-2dc436de81e5

如果你之前没用过进度条,八成是觉得它会增加不必要的复杂性或者很难维护,其实不然。要加一个进度条其实只需要几行代码。在这几行代码中,我们可以看看如何在命令行脚本以及 PySimpleGUI UI 中添加进度条。

下文将介绍 4 个常用的 Python 进度条库:

Progress

第一个要介绍的 Python 库是 Progress。

你只需要定义迭代的次数、进度条类型并在每次迭代时告知进度条。

import timefrom progress.bar 
import IncrementalBarmylist = [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()

Progress 实现的进度条效果如下:

Progressbar 的增量进度条

如果你不喜欢该进度条的格式,还可以从以下格式中挑选:

ProgressBar 支持的进度条类型。

相关文档:https://pypi.org/project/progress/1.5/

tqdm

下面我们看一下 tqdm 库。

和之前见过的库差不多,这两行代码也非常相似,在设置方面有一点点不同:

import timefrom tqdm 
import tqdmmylist = [1,2,3,4,5,6,7,8]
for i in tqdm(mylist): 
  time.sleep(1)

tqdm 实现的进度条效果如下:

这个进度条也提供了几种选项。

相关文档:https://tqdm.github.io/

Alive Progress

顾名思义,这个库可以使得进度条变得生动起来,它比原来我们见过的进度条多了一些动画效果。

从代码角度来说比较相似:

from alive_progress import alive_barimport 
timemylist = [1,2,3,4,5,6,7,8]
with alive_bar(len(mylist)) as bar: 
  for i in mylist: 
    bar() 
    time.sleep(1)

进度条的外观和预期差不多:

这种进度条有一些与众不同的功能,使用起来会比较有趣,功能详情可见项目:https://github.com/rsalmei/alive-progress

PySimpleGUI

用 PySimpleGUI 得到图形化进度条

我们可以加一行简单的代码,在命令行脚本中得到图形化进度条。

为了实现上述内容,我们需要的代码是:

import PySimpleGUI as sgimport 
timemylist = [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)

PySimpleGUI 应用程序中的进度条

项目作者之前曾经在 GitHub 上讨论过「如何快速启动 Python UI,然后使用 UI 创建比较工具」。在这个项目里,作者还讨论了一下如何集成进度条。

代码如下:

import PySimpleGUI as sgimport 
timemylist = [1,2,3,4,5,6,7,8]
progressbar = [ [sg.ProgressBar(len(mylist), orientation= h , size=(51, 10), key= progressbar )]]
outputwin = [ [sg.Output(size=(78,20))]]
layout = [ [sg.Frame( Progress ,layout= progressbar)], [sg.Frame( Output , layout = outputwin)], [sg.Submit( Start ),sg.Cancel()]]
window = sg.Window( Custom Progress Meter , layout)
progress_bar = window[ progressbar ] while True: 
  event, values = window.read(timeout=10) 
  if event ==  Cancel  or event is None: 
    break 
  elif event ==  Start : 
    for i,item in enumerate(mylist): 
      print(item) 
      time.sleep(1) 
      progress_bar.UpdateBar(i + 1)window.close()

没错,在 Python 脚本中使用进度条只需要几行代码,一点也不复杂。有了进度条,以后也不用再猜测脚本运行地怎么样了。

[Python] 实现文本进度条 怎么利用格式化输出和时间延迟来实现控制台风格的文本进度条呢 阅读详情

相关推荐

如何用Python制作漂亮的进度条!

从Python安装,入门,数据分析,爬虫解释,爬取股票基金的历史+实时数据,如何写一个简单量化策略,策略回测,如何看资金曲线统统都有介绍!非常超值!

zs8905_的博客 1116

python中实现进度条的四种方法

python中实现进度条的四种方法

guoqingru0311的博客 8081

自制一个python下载文件的进度条模块!

我们在做Python爬虫脚本的时候,往往希望在运行的过程中可以实时查看到我的下载进度!之前我也一直想实现这个功能(绝对不是为了炫(装)耀(B)),也查看了很多博客但是各种解决方案都不是很满意(当然,progressBar和tqdm这两个库都是可选择也可操作的),很多时候我们需要一些定制功能的时候就需要考虑自己实现,这个功能其实很简单,我们可以自己去实现它! 实现办法 进度条最大的问题是实现...

云飞学编程 8099

python使用PySimpleGUI设置进度条

PySimpleGUI 使用起来挺方便的,感觉比tkinter要方便。 主要是模拟一下任务进度完成情况。 一,简单设置进度条使用。

dandanfengyun的博客 4430

Python制作进度条,原来有这么多方法!

如果你之前没用过进度条,八成是觉得它会增加不必要的复杂性或者很难维护,其实不然。要加一个进度条其实只需要几行代码。在这几行代码中,我们可以看看如何在命令行脚本以及 PySimpleGUI UI 中添加进度条。 下文将介绍 4 个常用的 Python 进度条库: Progress 第一个要介绍的 Python 库是 Progress。 你只需要定义迭代的次数、进度条类型并在每次迭代时告知进度条。 importtimefromprogress.bar importIncrementa...

XIe_0928的博客 1940

Python展示文件下载进度条

大家在用Python写一些小程序的时候,经常都会用到`文件下载`,对于一些较小的文件,大家可能不太在乎文件的下载进度,因为一会就下载完毕了。 但是当...这里来写一下伪代码,非常好懂。

chenchen5152的博客 5016

Python 实现进度条的六种方式

一、普通进度条 示例代码 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) if __name__ =

python学习者的博客 1万+

3.入门AI通用操作 ③ 训练过程中的进度条(python)

人工智能模型训练过程中的进度条(python)1.基于print的进度条1.1 基础介绍1.2 代码举例2.使用sys.stdout.write进行打印2.1 一般情况2.2 存在多个sys.stdout.write的情况2.2.1 不符合预期的打印结果2.2.2 一般性的解决方法参考文献 1.基于print的进度条 1.1 基础介绍 这里使用了转义字符\r,其目的是下次打印时从本行开头进行打印。 如果print里设置end='',则不会换行,这时下次打印会对上次结果进行覆盖。 如果print里设置end=

驽马十驾,功在不舍;锲而不舍,金石可镂。 4827

瞬间高逼格!这 6 种 Python 进度条真的绝了!

嗨!朋友,我是沐沐欢迎你来到学习python的宝藏基地~~长按下方二维码可以添加我为好友哦相信大家对进度条一定不陌生了,比如在我们安装python库的时候可以看到下载的进度,此外在下载文件时也可以看到类似的进度条,比如下图这种:应用场景:下载文件、任务计时等今天辰哥就给大家分享Python的6种不同的实现实时显示处理进度的方式,文中每一种方式都附带一个案例,并提供官方文档,供大家学习,自定义去修改。第1种:普通进度条利用打印功能print进行实时刷新显示for i in ran

Python学习与数据挖掘 3804

PySimpleGUI图形界面绘制及办公自动化小软件的制作

PySimpleGUI图形界面绘制及办公自动化小软件的制作1 PySimpleGUI安装2 PySimpleGUI制作简易弹窗界面2.1 两种界面设计模式2.2 制作弹窗2.3 文字内容弹窗2.4 获取用户输入的弹窗2.5 文件选择弹出窗口2.6 文件夹选择窗口2.7 进度条弹窗3 制作简易压缩软件3.1 功能需求:3.2 功能拆解: 手动反爬虫:原博地址 知识梳理不易,请尊重劳动成果,文章仅发布在优快云网站上,在其他网站看到该博文均属于未经作者授权的恶意爬取信息 如若转载,请标明出处,谢谢! 1 P

lys_828的博客 9230

什么是plm系统?-数字化转型网

当今世界,产品研发能力是企业在激烈的市场竞争中保持战略优势的核心竞争力之一。如何有效地缩短产品研发周期、改善产品服务的设计迭代流程、有效降低产品的研发成本,也是企业面临的主要问题之一。PLM(Product Lifecycle Management,产品生命周期管理)在优化产品研发的全管理流程、增强企业产品的市场竞争力方面具有关键的作用。

cxo17757154043的博客 884

六种酷炫Python运行进度条

↑点击上方“一行数据”关注 + 星标~每周送书,绝不错过行哥的人生进度条之前行哥给大家推荐过一个windows神器,里面有个小功能是人生进度条,可以看到2020年的进度只剩下一...

一行玩python 2210

海康工业相机BayerRG8转BGR8实战:手把手教你用OpenCV实现高效图像转换

本文详细解析了海康工业相机BayerRG8格式到BGR8格式的高效转换实战。针对工业视觉项目中高帧率、大分辨率场景下的性能瓶颈,文章对比了海康SDK原生方案与OpenCV多种转换方法的优劣,并提供了从基础实现到高级优化(如多线程流水线、内存管理、SIMD指令集应用)的完整代码示例与性能调优策略,帮助开发者构建稳定、高效的图像处理系统。

weixin_29237635的博客 524

使用进度条,让Python学习更加轻松快乐吧!

全文共2276字,预计学习时长7分钟 图源:Unsplash 进度条真的棒极了! 进度条直观地展示了一个进程需要多久完成。它使人们不必担心进度停滞,免除了估计代码进程的麻烦。用户可以实时看到程序进程! 如果以前从没用过进度条,甚至没想过用进度条,可能会想当然地认为进度条会将代码复杂化,使其难以维护。 事实并非如此。只需几行代码,就能在命令行脚本及PyS...

读芯术的博客 4446

企业数字化转型的 4A 架构指南:从概念解读到 TOGAF 阶段对应

4A企业架构是中国数字化转型实践中总结的简化框架,包含业务、应用、数据和技术四个架构层。它自上而下形成业务驱动应用的指导关系,自下而上构建技术支撑数据的实现路径,与国际标准TOGAF核心内容高度对应。该模型通过统一语言、战略对齐和系统梳理,有效连接业务需求与IT实施,已成为企业架构规划的实用工具。其分层结构清晰展示了从业务目标到技术落地的完整推导链,特别适合中国企业的数字化转型场景。

友莘居士的博客 2179

MIPI CPHY学习笔记02:TX物理层一致性测试项解析(HS信令模式)第一部分

在手机、平板等移动设备中,MIPI C-PHY是连接相机、显示屏等高速外设的“数据高速公路”。高速(HS)信令模式就是这条公路的“快车道”,专门用于传输高清图像、视频等大容量数据,既要保证传输速率,又要维持信号稳定。物理层一致性测试是对这条“快车道”的全面质检,确保高速传输下数据不卡顿、不失真。今天我们聚焦MIPI C-PHY TX(发射端)的Group 2 HS信令测试,用通俗语言拆解22个核心测试项(含2个过时项),看懂高速信号的合格标准。

一只豌豆象的博客 293

Python实现显示进度条

文章目录1. 普通进度条2. 1. 普通进度条 利用打印功能print进行实时刷新显示 import sys import time for i in range(1, 101): """ 任务代码 """ print("\r", end="") print("进度: {}%: ".format(i), "▓" * (i // 2), end="") sys.stdout.flush() time.sleep(0.05) 2. ...

TaoismHuang的博客 1万+

TC8工作原理

OPEN组织由全世界主要整车厂和供应商组成,旨在推广以太网技术在车辆中的应用。OPEN下属多个技术委员会(Tech Committee,简称TC),对不同方面的技术细节进行量化定义,并发布相应规范。其中TC8规范包括车载以太网ECU从物理层到应用层的各层互操作性以及常规基础功能服务,目的在于提高不同ECU之间的兼容性 UpperTester UpperTester作为Tester与DUT的被测核心功能模块之间的中介,辅助完成测试。UpperTester的主要功能包括: 与Tester就测试模式切换/请.

jasonj333 5329

太好玩了!6种Python实现【实时】显示进度条!

相信大家对进度条一定不陌生了,比如在我们安装python库的时候可以看到下载的进度,此外在下载文件时也可以看到类似的进度条,比如下图这种:应用场景:下载文件、任务计时等今天辰哥就给大家分享...

cainiao_python的博客 4910

PyTorch实战(14)——图注意力网络(Graph Attention Network,GAT)

本节介绍了图注意力网络 (Graph Attention Network, GAT) 在节点分类任务中的应用。相比图卷积网络 (GCN) 的平均聚合机制,GAT 通过引入注意力机制,能够为不同邻居节点分配差异化权重,从而更精准地捕捉图结构信息。实验表明,GAT 在 CiteSeer 数据集上的分类准确率达到 71.1%,较 GCN 提升 2.5 个百分点。可视化结果显示,GAT 学习到的节点表征具有更好的类别区分度。这验证了注意力机制在图数据建模中的有效性,为处理复杂图结构任务提供了更优解决方案。

盼小辉丶的博客 3605

管理类联考——逻辑——真题篇——按知识分类——综合推理

29、某部门抽检了肉制品、白酒、乳制品、干果、蔬菜、水产品、饮料等﹖类商品共521种样品,发现其中合格样品515种,不合格样品6种。已知: (1)蔬菜、白酒中有2种不合格样品。 (2)肉制品、白酒、蔬菜、水产品中有5种不合格样品。 (3)蔬菜、乳制品、干果中有3种不合格样品。 根据上述信息,可以得出以下哪项? A. 乳制品中没有不合格样品。 B. 肉制品中没有不合格样品。 C. 蔬菜中没有不合格样品。 D. 白酒中没有不合格样品。 E. 水产品中没有不合格样品。 31~32题基于以下题干: 某中学举行田径运

stqer的博客 2029

python 实现各种进度条

1. 时间进度条 ''' 想要学习Python?Python学习交流群:1004391443满足你的需求,资料都已经上传群文件,可以自行下载! ''' class Tiao(object): def __init__(self): self.obj1 = datetime.timedelta(seconds=1) self.var = '%H:%M:%S...

人生苦短, 还不用Python? 2497

js逆向实战:爬取淘宝男装商品

本文介绍了一个淘宝商品数据爬取程序的技术实现方案。该程序通过分析淘宝H5页面接口,实现了商品名称、价格、销量等关键信息的抓取,并支持图片下载功能。核心内容包括:1. 使用Request库发送HTTP请求获取数据;2. 通过逆向分析淘宝的签名算法(MD5加密)生成合法请求;3. 解析JSON数据并提取商品信息;4. 处理分页参数实现多页数据爬取;5. 将数据保存为CSV文件并下载商品图片。程序还实现了反爬虫绕过、错误处理、文件管理等辅助功能,完整展示了从数据采集到存储的全过程。

那些看似不起波澜的日复一日,会在某天让你看到坚持的意义 1574
上一篇: 30个Python常用极简代码,拿走就能用
下一篇: 2021年了,Transformer有可能替代CNN吗?未来有哪些研究方向?
机器学习算法那些事
博客等级 码龄9年 1633粉丝 62原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值