当前位置: 首页 > Python编程 > Python编程实战技能 > Python编程基础入门 > Python中的进度条progressbar,让进度直观显示!

Python中的进度条progressbar,让进度直观显示!

发布时间:2020年09月27日 07:33:38 来源: 点击量:362

【摘要】今天突然被问了一个问题:程序在执行中很久不结束是怎么回事?看不到程序执行的进度,在我们进行大工程的时候的确是一件很头疼的事,本文让

今天突然被问了一个问题:程序在执行中很久不结束是怎么回事?看不到程序执行的进度,在我们进行大工程的时候的确是一件很头疼的事,本文让我们来了解一个很常用的进度条展示小工具——Progressbar。

注:最新版的使用者不要照着GitHub上的官方文档去操作,文档信息没有维护,会出现很多问题。

下载模块

pip install progressbar

注意:安装模块的时候可能会出现warning,耐心等待,总会出现success。

简单的使用方法

import time
from progressbar import *
 
total = 1000
 
def test_func():
    time.sleep(0.01)
progress = ProgressBar()
for i in progress(range(1000)):
    test_func()

对于简单的循环函数而言,我们只需要把它加在我们组合了progress方法的循环下就可以了。

我们会看到如下的进度条:

放在循环外定义使用

# -*- coding=utf-8 -*-
from __future__ import division
import sys, time
from progressbar import *
total = 1000
def test_func():
    time.sleep(0.01)
bar = ProgressBar().start()
for i in range(1000):
    bar.update(int((i / (total - 1)) * 100))
    test_func()
bar.finish()

注意:不要忽略了start()和fininsh()否则会出现问题。

多层信息的展示使用

# -*- coding=utf-8 -*-
import time
from progressbar import *
total = 1000
def test_func():
    time.sleep(0.01)
widgets = [
    'Progress: ',
    Percentage(), ' ',
    Bar('#'), ' ',
    Timer(), ' ',
    ETA(), ' ',
    FileTransferSpeed()
]
bar = ProgressBar(widgets=widgets, maxval=10 * total).start()
for i in range(total):
    bar.update(10 * i + 1)
    test_func()
bar.finish()

结果如下:

参数说明:

'Progress: ' :设置进度条前显示的文字

Percentage() :显示百分比

Bar('#') :设置进度条形状

ETA() :显示预计剩余时间

Timer() :显示已用时间

更多Python知识,请关注Python视频教程!!

分享到: 编辑:wangmin

就业培训申请领取
您的姓名
您的电话
意向课程
点击领取

环球青藤

官方QQ

扫描上方二维码或点击一键加群,免费领取大礼包,加群暗号:青藤。 一键加群

绑定手机号

应《中华人民共和国网络安全法》加强实名认证机制要求,同时为更加全面的体验产品服务,烦请您绑定手机号.

预约成功

本直播为付费学员的直播课节

请您购买课程后再预约

环球青藤移动课堂APP 直播、听课。职达未来!

安卓版

下载

iPhone版

下载
环球青藤官方微信服务平台

刷题看课 APP下载

免费直播 一键购课

代报名等人工服务

课程咨询 学员服务 公众号

扫描关注微信公众号

APP

扫描下载APP

返回顶部