用tqdm和rich为固定路径和目标的python算法代码实现进度条
适用场景
在存在固定长度的算法中可以可视化算法执行的过程,比如对一个固定长度的数组的遍历,就是一种适合使用进度条来进行可视化的场景。而一些条件循环,比如while循环,不一定适合使用进度条来对算法执行过程进行可视化,典型的一个场景就是自洽的优化算法。
tqdm进度条的使用方法与效果
调用的方法也非常的容易,只需要将我们常用的range函数替换成tqdm中自带的trange即可。
# test_tqdm.py
from tqdm import trange
import time
for i in trange(10):
time.sleep(1)
以下是运行中间过程的一个显示场景
[dechin@dechin-manjaro progressbar]$ python3 test_tqdm.py
40%|████████████████ | 4/10 [00:04<00:06, 1.00s/it]
通过多次引用trange,还可以实现多个进度条打印的功能,但是这里如果第一层的数量较多,会导致屏幕输出过于复杂:
# test_tqdm.py
from tqdm import trange
import time
for i in trange(10):
for j in trange(10):
time.sleep(0.1)
以下是执行过程中的输出:
[dechin@dechin-20n2s01200 progressbar]$ python3 test_tqdm.py
100%|███████████████████████████████████████| 10/10 [00:01<00:00, 9.88it/s]
100%|███████████████████████████████████████| 10/10 [00:01<00:00, 9.88it/s]
100%|███████████████████████████████████████| 10/10 [00:01<00:00, 9.88it/s]
30%|████████████ | 3/10 [00:03<00:07, 1.01s/it]
rich进度条的使用方法与效果
使用的方法与tqdm有些类似的,也是直接调用rich中的track对range函数进行封装:
# test_rich.py
from rich.progress import track
import time
for i in track(range(15)):
time.sleep(1)
与简单的tqdm不同的是,rich支持种类众多的色彩,下面粘贴的执行过程显示,其实是带有彩色的:
[dechin@dechin-manjaro progressbar]$ python3 test_rich.py
Working... ━━━━━━━━━━╸━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 27% 0:00:12
版权声明
本文首发链接为:https://www.cnblogs.com/dechinphy/p/progress-bar.html
作者ID:DechinPhy
更多原著文章请参考:https://www.cnblogs.com/dechinphy/
用tqdm和rich为固定路径和目标的python算法代码实现进度条的更多相关文章
- Python进度条模块tqdm实现任务进度可视化
一.前言 tqdm 是一个易用性强.扩展性高的 Python 进度条库,可以在 Python 长循环中添加一个进度提示信息,我们只需要封装任意的迭代器 tqdm(iterator) 即可. 二.安装 ...
- 【转】Python进度条tqdm的使用
有时候在使用Python处理比较耗时操作的时候,为了便于观察处理进度,这时候就需要通过进度条将处理情况进行可视化展示,以便我们能够及时了解情况.这对于第三方库非常丰富的Python来说,想要实现这一功 ...
- 固定学习率梯度下降法的Python实现方案
应用场景 优化算法经常被使用在各种组合优化问题中.我们可以假定待优化的函数对象\(f(x)\)是一个黑盒,我们可以给这个黑盒输入一些参数\(x_0, x_1, ...\),然后这个黑盒会给我们返回其计 ...
- tqdm学习-一个快速,可扩展的Python和CLI进度条
参考:https://pypi.org/project/tqdm/ 1.安装: (base) userdeMacBook-Pro:~ user$ conda activate deeplearning ...
- Tqdm 进度条可视化模块
2018-12-04 14:34:25 使用python Tqdm进度条库让你的python进度可视化 Tqdm在阿拉伯语表示进步,在西班牙语中表示我非常爱你.是一个快速,可扩展的Python进度条, ...
- tqdm:Python 进度条
Tqdm 是 Python 进度条库,可以在 Python 长循环中添加一个进度提示信息.用户只需要封装任意的迭代器,是一个快速.扩展性强的进度条工具库. 用法:tqdm(iterator) 代码地址 ...
- 从 Python 第三方进度条库 tqdm 谈起 (转载)
原文地址: https://blog.ernest.me/post/python-progress-bar tqdm 最近一款新的进度条 tqdm 库比较热门,声称比老版的 python-progre ...
- 使用tqdm组件构造程序进度条
使用tqdm组件构造程序进度条 觉得有用的话,欢迎一起讨论相互学习~Follow Me 主要代码 import tqdm # 引用tqdm组件 TRAIN_STEPS = N for i in tqd ...
- python模块之——tqdm(进度条)
from tqdm import tqdm for i in tqdm(range(10000)): """一些操作""" pass 效果: ...
随机推荐
- [leetcode]75.Sort Color三指针
import java.util.Arrays; /** * Given an array with n objects colored red,white or blue, * sort them ...
- jQuery是如何实现?
jQuery是什么? jQuery就是一个javascript的类库,函数库. jQuery是如何实现的? jQuery采用的是构造函数模式进行开发的,jQuery是一个类 常用的方法(CSS.属性. ...
- 浅谈java中异常处理
java语言的异常捕获结构是由try.catch.finally,try中语句块是可能发生异常的java语句,catch用来激发捕获的异常,try语句块中如果发生异常,则调到catch语句块中执行ca ...
- 如何使用容器镜像服务 TCR 轻松实现容器 DevOps
作者周明,腾讯云容器产品工程师.目前主要负责腾讯云TKE.TCR等产品控制台的相关研发工作. 概述 当你使用云厂商提供的容器服务部署业务服务后,是否对交付部署全链路的效率有更高的需求,例如实现基于容器 ...
- Docker环境下升级PostgreSQL
查阅PostgreSQL官方文档可以得知,官方提供了两种方式对数据库进行升级--pg_dumpall与pg_upgrade. pg_dumpall是将数据库转储成一个脚本文件,然后在新版数据库中可以直 ...
- Linux常用命令 | grep
作者简介 李先生(Lemon),高级运维工程师(自称),SRE专家(目标),梦想在35岁买一辆保时捷.喜欢钻研底层技术,认为底层基础才是王道.一切新技术都离不开操作系统(CPU.内存.磁盘).网络 ...
- #3使用html+css+js制作网页 番外篇 制作接收php
使用html+css+js制作网页 番外篇 制作接收php 本系列链接 基础 php语法 例子 本系列链接 #1使用html+css+js制作网站教程 准备 #2使用html+css+js制作网站教程 ...
- Synchronized 精讲
1.简介 1.1 作用 在并发场景中,保证同一时刻只有一个线程对有并发隐患的代码进行操作 1.2 错误案例 需求:两个线程对 count 变量进行200000次循环增加,预期结果是400000次 pu ...
- 九个最容易出错的 Hive sql 详解及使用注意事项
阅读本文小建议:本文适合细嚼慢咽,不要一目十行,不然会错过很多有价值的细节. 文章首发于公众号:五分钟学大数据 前言 在进行数仓搭建和数据分析时最常用的就是 sql,其语法简洁明了,易于理解,目前大数 ...
- Jenkins-自动部署,备份
Jenkins-自动部署,备份 问题导入: 环境: CentOS 7, Tomcat 8.5, Jdk 1.8, Maven 3.25 ,Jenkins war包 2.x 原因: 每次部署 ...