iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >如何在Python中妥善使用进度条详解
  • 201
分享到

如何在Python中妥善使用进度条详解

2024-04-02 19:04:59 201人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

目录1 简介2 tqdm常用方法2.1 基础用法2.2 配合jupyter notebook/jupyter lab的美观进度条2.3 配合pandas中的apply3 alive-

1 简介

在日常运行程序的过程中常常涉及到循环迭代过程,对于执行时间很短的程序来说倒无所谓,但对于运行过程有明显耗时的涉及循环迭代的程序,为其加上进度条(progress bar),是帮助我们监测代码执行进度以及处理中间异常错误非常实用的技巧。

本文就将为大家介绍python中非常实用又风格迥异的两个进度条相关库——tqdm与alive-progress的主要用法。

2 tqdm常用方法

tqdm是Python中所有进度条相关库中最出名的,既然是最出名的,自然有它独到之处。

tqdm不仅可以生成基础的可在终端中显示的进度条,还可以配合jupyter notebook和jupyter lab生成更加美观的网页交互部件形式的进度条,更是和pandas强强联手,为pandas中的一些操作提供专有的进度条功能。

下面我们来对tqdm的主要功能进行介绍。

2.1 基础用法

因为是第三方库,首先需要利用pip install tqdm或 conda install -c conda-forge tqdm对其进行安装,安装完成后先来看看它最基本的用法:

利用tqdm.tqdm,将for循环过程中进行迭代的对象简单包裹,就实现了为循环过程添加进度条以及打印执行速度、已运行时间与预估剩余运行时间等实用信息的功能,同样也可用于列表推导:

而针对迭代对象是range()的情况,tqdm还提供了简化版的trange()来代替tqdm(range())

其附带的参数desc还可以帮助我们设置进度条的说明文字:

而如果想要在迭代过程中变更说明文字,还可以预先实例化进度条对象,在需要刷新说明文字的时候执行相应的程序:

但当迭代的对象长度一开始未知时,譬如对pandas中的DataFrame.itertuples()进行迭代,我们就只能对其执行速度等信息进行估计,但无法看到进度条递增情况,因为tqdm不清楚迭代的终点如何:

2.2 配合jupyter notebook/jupyter lab的美观进度条

tqdm对jupyter notebook和jupyter lab有着特殊的支持,且使用方法非常简单,只需要将原有的from tqdm import XXX的相应功能导入格式修改为from tqdm.notebook import XXX就可以了,以trange为例:

2.3 配合pandas中的apply

tqdm对pandas中的apply()过程提供了特殊的支持,因为pandas中的apply()本质上就是串行循环运算,你可以将pandas中的任何apply操作替换为progress_apply,并且记住每个单独的progress_apply前要先执行tqdm.pandas(),就像下面的例子一样:

3 alive-progress常用方法

虽然与tqdm一样都是为了给循环过程加上进度条而诞生的库,但alive-progress相比tqdm增加了更多花样繁多的动态效果,我们通过调用其专门提供的showtime()函数可以查看所有可用的动态进度条样式:

同样类似地可以查看所有进度条样式:

使用起来也是非常简单,但与tqdm用法区别很大,需要配合with关键词,譬如下面我们使用到alive_progress中的alive_bar来生成动态进度条:

通过修改bar参数来改变进度条的样式:

更多关于alive-progress的内容感兴趣的朋友可以查看官方说明:(https://GitHub.com/rsalmei/alive-progress ),但比较遗憾的是目前的alive-progress只能在终端中运行,还没有为jupyter开发更美观的交互式部件,但你可以在譬如网络爬虫等任务中使用它,效果也是很不错的。

总结

到此这篇关于如何在Python中妥善使用进度条的文章就介绍到这了,更多相关Python使用进度条内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: 如何在Python中妥善使用进度条详解

本文链接: https://www.lsjlt.com/news/145023.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何在Python中妥善使用进度条详解
    目录1 简介2 tqdm常用方法2.1 基础用法2.2 配合jupyter notebook/jupyter lab的美观进度条2.3 配合pandas中的apply3 alive-...
    99+
    2024-04-02
  • 怎么在Python中妥善使用进度条
    这篇文章主要介绍“怎么在Python中妥善使用进度条”,在日常操作中,相信很多人在怎么在Python中妥善使用进度条问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么在Python中妥善使用进度条”的疑惑有所...
    99+
    2023-06-29
  • 详解如何在Vue3+TS的项目中使用NProgress进度条
    目录写在前面 在项目中安装 简单的封装 在Vue切换路由时展示进度条写在前面 NProgress是一个轻量级的进度条组件,在Github上已经2.4万star数了,虽然这个组件已经好...
    99+
    2024-04-02
  • Python进度条tqdm的用法详解
    前言 有时候在使用Python处理比较耗时操作的时候,为了便于观察处理进度,这时候就需要通过进度条将处理情况进行可视化展示,以便我们能够及时了解情况。这对于第三方库非常丰富的Pyth...
    99+
    2024-04-02
  • python如何使用tqdm制作进度条
    这篇文章主要介绍了python如何使用tqdm制作进度条,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。使用tqdm制作进度条TQDM库使你可以为Python和CLI创建快速地...
    99+
    2023-06-27
  • 如何在C#中实现进度条
    在C#中实现进度条可以使用ProgressBar控件。下面是一个简单的示例代码:```csharpusing System;usin...
    99+
    2023-09-17
    C#
  • 如何在Python中使用Tqdm模块实现一个进度条功能
    本文章向大家介绍如何在Python中使用Tqdm模块实现一个进度条功能,主要包括如何在Python中使用Tqdm模块实现一个进度条功能的使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。Pytho...
    99+
    2023-06-06
  • 如何用Python中progress库实现进度条
    这篇文章主要介绍“如何用Python中progress库实现进度条”,在日常操作中,相信很多人在如何用Python中progress库实现进度条问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何用Python...
    99+
    2023-07-05
  • 如何在Android中动态显示进度条的进度
    在Android中,可以使用ProgressBar来显示进度条的进度。以下是一个示例代码,演示如何动态地更新进度条的进度。1. 在布...
    99+
    2023-09-20
    Android
  • MFC进度条控件如何使用
    MFC进度条控件可以通过以下步骤来使用:1. 在资源编辑器中添加一个进度条控件。可以通过拖放的方式将进度条控件添加到对话框或窗口中。...
    99+
    2023-09-15
    MFC
  • 如何使用pace.js美化你的网站加载进度条详解
    目录前言pace.js介绍1.配置介绍2.主题3.收集器4.元素5.重新启动规则6.API在网站中的应用总结前言 最近做网站体验优化的时候突然发现一个好东西,pace.js(加载进度...
    99+
    2024-04-02
  • Xamarin XAML语言中如何使用方法设置进度条进度
    这篇文章将为大家详细讲解有关Xamarin XAML语言中如何使用方法设置进度条进度,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在ProgressBar中定义了一个ProgressTo方法,此方法也可以...
    99+
    2023-06-04
  • 如何使用tqdm在Python应用中显示进度
    本篇内容主要讲解“如何使用tqdm在Python应用中显示进度”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何使用tqdm在Python应用中显示进度”吧!阿拉米语,希伯来语和阿拉伯语中的闪米...
    99+
    2023-06-15
  • Python中怎么使用Flask实现进度条
    本篇内容主要讲解“Python中怎么使用Flask实现进度条”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python中怎么使用Flask实现进度条”吧!使用Flask实现进度条问题描述Pyth...
    99+
    2023-06-30
  • 如何在html中实现进度条效果
    今天就跟大家聊聊有关如何在html中实现进度条效果,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。<progress> 标签定义运行中的任务进度(进程)。下载进度:<...
    99+
    2023-06-15
  • 怎么在Android中使用progressbar进度条控件
    怎么在Android中使用progressbar进度条控件?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1)进度条ProgressBar使用方法在layout布...
    99+
    2023-05-30
    android progressbar
  • 如何使用CSS实现圆形进度条
    这篇文章主要介绍了如何使用CSS实现圆形进度条,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。   首先一个父级div设置相对定位,内部含有...
    99+
    2024-04-02
  • Xamarin XAML语言中如何使用属性设置进度条的当前进度
    这篇文章主要为大家展示了“Xamarin XAML语言中如何使用属性设置进度条的当前进度”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Xamarin XAML语言中如何使用属性设置进度条的当前进...
    99+
    2023-06-04
  • 如何使用HTML/CSS实现各类进度条
    这篇文章主要讲解了“如何使用HTML/CSS实现各类进度条”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何使用HTML/CSS实现各类进度条”吧!HTML...
    99+
    2024-04-02
  • vue视频时间进度条组件使用方法详解
    本文实例为大家分享了vue视频时间进度条组件的使用方法,供大家参考,具体内容如下 有些视频是以视频流的形式进行渲染的,没有视频滚动条,所以就写了24h的时间组件 实现思路: 1、...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作