python 进度条_六种酷炫Python运行进度条

转自:一行数据

阅读文本大概需要 3 分钟

你的代码进度还剩多少?

今天给大家介绍下目前6种比较常用的进度条,让大家都能直观地看到脚本运行最新的进展情况。

  • 1.普通进度条
  • 2.带时间进度条
  • 3.tpdm进度条
  • 4.progress进度条
  • 5.alive_progress进度条
  • 6.可视化进度条

1.普通进度条

在代码迭代运行中可以自己进行统计计算,并使用格式化字符串输出代码运行进度。

import sysimport timedef progress_bar():    for i in range(1, 101):        print("", end="")        print("Download progress: {}%: ".format(i), "▋" * (i // 2), end="")        sys.stdout.flush()        time.sleep(0.05)progress_bar()
a31b28bf478d425f08e64fc5a9ae5600.gif

进度条1

2.带时间进度条

导入time模块来计算代码运行的时间,加上代码迭代进度使用格式化字符串来输出代码运行进度。

import timescale = 50print("执行开始,祈祷不报错".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("{:^3.0f}%[{}->{}]{:.2f}s".format(c,a,b,dur),end = "")    time.sleep(0.1)print(""+"执行结束,万幸".center(scale // 2,"-"))
8d343b9efc9ef5cd325540471b293cf7.gif

进度条2

3.tpdm进度条

这是一个专门生成进度条的工具包,可以使用pip在终端进行下载,当然还能切换进度条风格。

from time import sleepfrom tqdm import tqdm# 这里同样的,tqdm就是这个进度条最常用的一个方法# 里面存一个可迭代对象for i in tqdm(range(1, 500)):   # 模拟你的任务   sleep(0.01)sleep(0.5)
c8a1204cd949d98cb861c97b832a109f.gif

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

4.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()
a0c5462dccf45357236786af0365ebfc.gif

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

5.alive_progress进度条

顾名思义,这个库可以使得进度条变得生动起来,它比原来我们见过的进度条多了一些动画效果,需要使用pip进行下载,代码案例如下:

from alive_progress import alive_baritems = range(100)                  # retrieve your set of itemswith 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)
0b7134fcb75090a574a9385f6e307943.gif

相关文档:https://github.com/rsalmei/alive-progress

6.可视化进度条

用 PySimpleGUI 得到图形化进度条,我们可以加一行简单的代码,在命令行脚本中得到图形化进度条,也是使用pip进行下载,代码案例如下

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)
0aa2dd2055918dcfc1110a01426179b7.gif

感谢阅读

cc3405575b50d0a85e45e124c81a454c.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/454359.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

js 获取多少天前

getBeforeDate: function(day, str) { var now new Date().getTime(); //获取毫秒数 var before new Date(now - ((day > 0 && day ? day : 0) * 86400 * 1000)); var year before.getFullYear(); var month before.getMonth()1; var date before.getDate(); …

程序员的基本素质

给所有立志成为程序员的朋友 以及 自勉之! 程序员基本素质: 作一个真正合格的程序员,或者说就是可以真正合格完成一些代码工作的程序员,应该具有的素质。 1:团队精神和协作能力 把它作为基本素质,并…

权限之浅理解

白马过隙,在感叹时光流逝的同时不得不承认在学习中随着知识面的不断扩展所接受的东西也越来越多,尤其是那些外形比较容易混淆的命令,着实让作为新手的吃了很多苦头,趁着学习紧张之时偷个懒整理这周易混淆的命令: chgrp…

机器学习算法之生成树

一、什么是决策树? 决策树(Decision Tree)是一种基本的分类和回归的方法。 分类决策树模型是一种描述对实例进行分类的树形结构。决策树由结点(node)和有向边(directed edge)组成。结点有两种…

强烈推荐给从事IT业的同行们 (转载)

作者:李学凌 文章来源:bbs.ustc.edu.cn 中国有很多小朋友,他们18,9岁或21,2岁,通过自学也写了不少代码,他们有的代码写的很漂亮,一些技术细节相当出众,也很有钻研精神,但是他…

微机原理控制转移类指令

1.无条件跳转指令 指令格式;JMP 目标地址 功能:JMP可以使程序无条件地跳转到程序存储器中某目标地址 注意点: 1)指令目标地址若在JMP指令所在的代码段内,属段内跳转,指令只修改IP内容。指令目标地址若在JMP指令所在的代…

OPENNMS的后台并行管理任务

Concurrent management tasks: 1. . Action daemon - automated action (work flow)2. .数据采集Collection daemon - collects data3. .能力检查Capability daemon - capability check on nodes4. .动态主机配置协议DHCP daemon - DHCP clien…

机器学习算法之集成学习

集成学习的思想是将若干个学习器(分类器&回归器)组合之后产生一个新学习器。弱分类器(weak learner)指那些分类准确率只稍微好于随机猜测的分类器(errorrate < 0.5)。 集成算法的成功在于保证弱分类器的多样性(Diversity)。而且集成不稳定的算法也能够得到一个比较明显…

常用的方法论-NPS

转载于:https://www.cnblogs.com/qjm201000/p/7687510.html

controller调用controller的方法_SpringBoot 优雅停止服务的几种方法

转自&#xff1a;博客园&#xff0c;作者&#xff1a;黄青石www.cnblogs.com/huangqingshi/p/11370291.html 在使用 SpringBoot 的时候&#xff0c;都要涉及到服务的停止和启动&#xff0c;当我们停止服务的时候&#xff0c;很多时候大家都是kill -9 直接把程序进程杀掉&#x…

linux下安装Oracle10g时,安装rpm文件的技巧 (rpm -Uvh package名)

rpm -q package名 &#xff1a; 查询该package是否已经被安装了rpm -qa | grep package名 或是package 的关键字 &#xff1a; 查询该package是否已经被安装了rpm -Uvh package名 &#xff1a; 意思是update packagerpm -Uvh package名 --force &#xff1a; 意思是如果该…

机器学习之聚类概述

什么是聚类 聚类就是对大量未知标注的数据集&#xff0c;按照数据 内部存在的数据特征 将数据集划分为 多个不同的类别 &#xff0c;使 类别内的数据比较相似&#xff0c;类别之间的数据相似度比较小&#xff1b;属于 无监督学习。 聚类算法的重点是计算样本项之间的 相似度&…

程序员-建立你的商业意识 闫辉 著

1 程序员为什么需要商业意识 几 年前&#xff0c;当我刚刚认识Fishman的时候&#xff0c;听到他神奇的创业经历&#xff0c;觉得非常不可思议。甚至还专门写了一篇报道发到《电脑报》上&#xff0c;题目是《从程序员到 CEO》。不久&#xff0c;Fishman将创建的又一个新公司…

qt release打包发布_几种解决Qt程序打包后无法连接数据库问题的方法

Qt是一个跨平台C图形用户界面应用程序开发框架&#xff0c;使用它不仅可以方便地开发GUI程序&#xff0c;也可以开发非GUI程序&#xff0c;可以一次编写&#xff0c;处处编译。今天遇到的问题比较怪异&#xff0c;我开发的是一个桌面版订单管理系统&#xff0c;整体架构就是一个…

Java操作MongoDB

先引入mongo-java-dirver驱动 123456<!-- mongo-java-dirver --><dependency><groupId>org.mongodb</groupId> <artifactId>mongo-java-driver</artifactId> <version>3.4.2</version> </dependency>代码操作演示&#…

机器学习之拉格朗日乘子法和 KKT

有约束的最优化问题 最优化问题一般是指对于某一个函数而言&#xff0c;求解在其指定作用域上的全局最小值问题&#xff0c;一般分为以下三种情况(备注&#xff1a;以下几种方式求出来的解都有可能是局部极小值&#xff0c;只有当函数是凸函数的时候&#xff0c;才可以得到全局…

定长顺序串的实现

string.h #define MAXSTRLEN 255#define ERROR 0#define OK 1 typedef int Status;typedef char String[MAXSTRLEN 1]; //初始化字符串Status StrAssign(String T, char e); //有串S复制得串TStatus StrCopy(String T,String S); //比较两个串的大小Status StrCompare(String …

pmp思维导图 第六版_PMP考试技巧攻略(上)

PMP考试需要有保证足够的时间投入&#xff1a;获得PMP 考试并拿到5A 成绩&#xff0c;并且还需要理解性记忆&#xff1a;PMP 指定教材PMBOK第六版&#xff08;教材为必看三遍以上&#xff09;&#xff0c;学习起来是有趣的&#xff0c;同时也是痛苦的。因为看书时字面的字我们认…

程序员应该具备的素质(来自csdn)

程序员是一种技术工作&#xff0c;在IT的发展中有相当重要的地位&#xff0c;从底层硬件通讯协议的建立&#xff0c; 到数据传输层的处理&#xff0c;到操作系统的建设&#xff0c;到数据库平台的建设&#xff0c;一直到应用层上各种数 据营销平台的搭建&#xff0c;程序员在里…

linux的du使用方法

该命令的各个选项含义如下&#xff1a; -s 对每个Names参数只给出占用的数据块总数。 -a 递归地显示指定目录中各文件及子孙目录中各文件占用的数据块数。若既不指定-s&#xff0c;也不指定-a&#xff0c;则只显示Names中的每一个目录及其中的各子目录所占的磁盘块数-b 以字节为…