返回顶部
首页 > 资讯 > 后端开发 > Python >Python 输出命令行进度条
  • 627
分享到

Python 输出命令行进度条

命令行进度条Python 2023-01-30 23:01:26 627人浏览 八月长安

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

摘要

在使用 pip 安装时,你会发现有下载进度条,我们也可以借助开源的第三方库来实现这个功能,在项目输出时增加一些可视化效果。 一个简单易用的第三方库是:progress 作者提供了动图很直观地展现了实现的所有输出。 ​   这个库实现了两类

在使用 pip 安装时,你会发现有下载进度条,我们也可以借助开源的第三方库来实现这个功能,在项目输出时增加一些可视化效果。

一个简单易用的第三方库是:progress

作者提供了动图很直观地展现了实现的所有输出。

 

这个库实现了两类样式,一类是有终点的进度条样式,另一类是多用于加载的转圈样式。

import time
from progress.bar import Bar

bar = Bar('Processing', max=100, fill='@', suffix='%(percent)d%%')
for i in range(100):
    time.sleep(0.1)
    bar.next()
bar.finish()

参数定义的功能:

  • max: 进度条最大进度
  • fill:进度条填充的字符
  • suffix:百分比的样式

运行上述代码会得到输出

Processing |@@@@@@                          | 20%

同时也提供上下文的用法(需要用 GitHub 里的源代码):

with Bar('Processing', max=20) as bar:
    for i in range(20):
        # Do some work
        bar.next()

 

另一类转圈样式,用法和Bar类似,只要没达到终点就一直调用next方法即可

from progress.spinner import Spinner

spinner = Spinner('Loading ')
while state != 'FINISHED':
    # Do some work
    spinner.next()

 

动图里的所有样式都是作者已经实现的派生类,用法基本都一样,当然也可以继承基础类来自己实现更多的功能。

class SlowBar(Bar):
    suffix = '%(remaining_hours)d hours remaining'
    @property
    def remaining_hours(self):
        return self.eta // 3600

上面介绍的库,实现的功能很简单,而且默认只能输出到终端。

如果有更复杂的使用场景,推荐使用另一个库:python-progressbar

这个库实现了更多功能,可以自定义组合出一个进度条样式,还可以指定输出流。

 

基本的使用很简单,可以直接传入迭代对象。

import time
import progressbar

for i in progressbar.progressbar(range(100)):
    time.sleep(0.02)

输出如下:

70% (70 of 100) |################       | Elapsed Time: 0:00:01 ETA:   0:00:00

 

也可以生成对象后调用update方法 。

import time
import progressbar

bar = progressbar.ProgressBar(max_value=100)
for i in range(100):
    time.sleep(0.1)
    bar.update(i)

 

最有特点之处就是可以自定义组件,比如我们来实现类似于动图中转圈加载的样式。

import time
import progressbar

widgets = [
    'Loading: ',
    '[', progressbar.AnimatedMarker(), ']',
    ' ',
    progressbar.Timer()
]
bar = progressbar.ProgressBar(
    widgets=widgets, max_value=progressbar.UnknownLength)

for i in range(100):
    time.sleep(0.5)
    bar.update(i)

输出样式是这样的,方括号中的会一直旋转

Loading: [\] Elapsed Time: 0:00:13

 

更多功能不再赘述,可以查看 github 中的文档

 

欢迎关注

微信公众号:面向人生编程

编程思维不应只存留在代码之中,更应伴随于整个人生旅途,这个公众号不只聊技术,还会聊产品/互联网/经济学等广泛话题,所以也欢迎非程序员关注。

--结束END--

本文标题: Python 输出命令行进度条

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

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

猜你喜欢
  • Python 输出命令行进度条
    在使用 pip 安装时,你会发现有下载进度条,我们也可以借助开源的第三方库来实现这个功能,在项目输出时增加一些可视化效果。 一个简单易用的第三方库是:progress 作者提供了动图很直观地展现了实现的所有输出。 ​   这个库实现了两类...
    99+
    2023-01-30
    命令行 进度条 Python
  • 怎么在 linux命令行中输出一个进度条
    怎么在 linux命令行中输出一个进度条?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。代码如下:<php for ($i = ...
    99+
    2023-06-13
  • 怎么在linux 命令行中输出一个进度条
    本篇文章给大家分享的是有关怎么在linux 命令行中输出一个进度条,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。什么是Linux系统Linux是一种免费使用和自由传播的类UNI...
    99+
    2023-06-07
  • Python 获取命令行输出
    使用的是windows系统,python 2.7。 import os command = 'ping www.baidu.com ' #可以直接在命令行中执行的命令 r = os.popen(command) #执行该命...
    99+
    2023-01-31
    命令 行输出 Python
  • 怎么从Linux命令行进行打印输出
    这篇文章主要讲解了“怎么从Linux命令行进行打印输出”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么从Linux命令行进行打印输出”吧!Linux 命令行打印很容易。你可以使用 lp 命...
    99+
    2023-06-15
  • python获取命令行输出结果
    python获取命令行输出结果,并对结果进行过滤找到自己需要的! 这里以获取本机MAC地址和IP地址为例! # coding: GB2312 import os, re # execute command, and re...
    99+
    2023-01-31
    命令 行输出 python
  • 退出Python命令行
    3种: 1.quit(), 2.exit() 3.Ctrl d。 ctrl d快捷键最方便。 ...
    99+
    2023-01-31
    命令行 Python
  • scp命令进行文件传输
    scp命令进行文件传输 一、登录目标服务器二、将本地服务器文件上传到目标服务器三、将目标服务器文件下载到本地服务器 ...
    99+
    2023-10-05
    服务器 linux ssh
  • Linux中如何使用ps命令输出进行排序
    这篇文章主要介绍了Linux中如何使用ps命令输出进行排序,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。ps命令是理解Linux系统上运行的内容和每个进程使用的资源的关键。了...
    99+
    2023-06-15
  • Python · 进度条
    (这里是本章会用到的 GitHub 地址) 我实现的这个进度条可能是可以当做一个第三方库来使用的(这个人好自大,啧),它支持记录并发程序的进度且损耗基本只来源于 Python 本身 先来看看我们的进度条长啥样:   它有一个名字(“Tes...
    99+
    2023-01-31
    进度条 Python
  • python 进度条
    功能说明:将程序执行进展情况按照百分比用进度条显示,适合用于文件传输进度显示运行环境:Linux 6,python3.6.2print:打印末尾会自动加上换行符'\n',如果要让打印的结果一直在同一行显示,不能使用这个命令sys.stdou...
    99+
    2023-01-31
    进度条 python
  • 进入mysql命令行和退出mysql命令行详解
    目录进入mysql命令退出mysql命令mysql命令行常用语句进入mysql之前基础命令行语句关于mysql用户访问与权限进入mysql命令 mysql -u 用户名 -p回车 然后输密码 或 mysql -u用户名 ...
    99+
    2022-11-22
    进入mysql命令行 退出mysql命令行 mysql命令行
  • oracle命令行格式化输出的几个常用命令
    set linesize(line) 设置sqlplus输出的最大行宽 -- set pagesize 设置页面的最大行数 set newpage 设置页面之间的空行数&nbs...
    99+
    2024-04-02
  • Python进行JSON格式化输出
    先写一个字典并将其转换成JSON格式: # encoding:utf-8 import json dic = {'a': 1, 'b': 2, 'c': 3} js = json.dumps(dic) print(js) 打...
    99+
    2023-01-31
    Python JSON
  • 如何退出python命令行
    两种方法 1. 在">>>" 命令行状态输入 quit()并按回车 2.在 ">>>"命令行状态输入 ctrl+Z 并按回车 ...
    99+
    2023-01-31
    命令行 python
  • python怎么进入命令行
    在 python 中进入命令行的方法有:使用 subprocess 模块直接打开交互式命令行。通过 os.system() 函数调用命令行命令。使用 shelve 模块创建持久的命令行。...
    99+
    2024-05-14
    python macos
  • shell命令行如何实现输入与输出功能
    这篇文章将为大家详细讲解有关shell命令行如何实现输入与输出功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。标准输入/输出和重定向,Linux发行版Fedora Core Linux,而Red Hat...
    99+
    2023-06-09
  • python subprocess.run()、subprocess.Popen()、subprocess.check_output()(执行系统命令、启动新的进程、连接到子进程的输入/输出管道)
    文章目录 python subprocess基本函数subprocess.run示例(只可以捕获标准输出,标准错误不知道咋获取,异常也没抛。。。以后再看,现在有事) subproces...
    99+
    2023-09-14
    python 服务器
  • CentOS怎么查看命令执行进度
    这篇文章给大家分享的是有关CentOS怎么查看命令执行进度的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。PV 全命为Pipe Viewer,利用它我们可以查看到命令执行的进度。# wget h...
    99+
    2023-06-10
  • 文本进度条(python)
    前言 关于Python的基础学习:目前是跟着慕课和教材对应学习的 为了更好的监督自己和记录学习过程 真的很想睡觉… 01 简单的文本进度条 import timescale = 10print("{:...
    99+
    2023-10-25
    python 开发语言
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作