Python使用progressbar模块实现显示进度条功能

首先用pip安装progressbar。pip install progressbar

用法一

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

显示效果:

 5% |###                                                                      |
100% |######################################################################|

用法二

from __future__ import division
import sys, time
from progressbar import *
total=1000
def dosomework():
    time.sleep(0.01)
pbar = ProgressBar().start()
for i inrange(1000):
    pbar.update(int((i /(total -1)) *100))
    dosomework()
pbar.finish()

用法三

import time
from progressbar import *
total=1000
def dosomework():
    time.sleep(0.01)
widgets =['Progress: ',Percentage(), ' ', Bar('#'),' ', Timer(),' ', ETA(), ' ', FileTransferSpeed()]
pbar=ProgressBar(widgets=widgets, maxval=10*total).start()
for i inrange(total):
    pbar.update(10*i +1)
    dosomework()
pbar.finish()

显示效果:

Progress:   3% |###                                                                                | Elapsed Time: 0:00:15 ETA: 0:09:02 919.67  B/s
Progress: 100% |###################################################################################| Elapsed Time: 0:10:10 Time: 0:10:10 917.42  B/s

widgets可选参数含义:

‘Progress: ‘ :设置进度条前显示的文字
Percentage() :显示百分比
Bar(‘#’) : 设置进度条形状
ETA() : 显示预计剩余时间
Timer() :显示已用时间

在pycharm中使用时,需要在Run —>Edit Configurations里勾上Emulate terminal in output console