今天,我突然被问到一个问题:程序在执行过程中很长一段时间没有结束是怎么回事?我们看不到程序执行的进展。当我们进行大型项目时,这确实是一个令人头疼的问题。本文让我们了解一个非常常用的进度条显示小工具——Progressbar。
注:最新版本的用户不应遵循GitHub上的官方文档。如果文档信息没有维护,就会出现很多问题。
下载模块
pipinstallprogressbar
注:安装模块时可能会出现warning,耐心等待,总会出现success。
使用方法简单
importtime fromprogressbarimport* total=1000 deftest_func(): time.sleep(0.01) progress=ProgressBar() foriinprogress(range(1000)): test_func()
对于简单的循环函数,我们只需要将其添加到结合progress方法的循环中。
我们将看到以下进度条:
在循环外定义使用
#-*-coding=utf-8-*- from__future__importpision importsys,time fromprogressbarimport* total=1000 deftest_func(): time.sleep(0.01) bar=ProgressBar().start() foriinrange(1000): bar.update(int((i/(total-1))*100)) test_func() bar.finish()
注:不要忽视start()和fininsh(),否则会出现问题。
显示和使用多层信息
#-*-coding=utf-8-*- importtime fromprogressbarimport* total=1000 deftest_func(): time.sleep(0.01) widgets=[ 'Progress:', Percentage(),'', Bar('#'),'', Timer(),'', ETA(),'', FileTransferSpeed() ] bar=ProgressBar(widgets=widgets,maxval=10*total).start() foriinrange(total): bar.update(10*i+1) test_func() bar.finish()
结果如下:
参数说明:
'Progress: ' :设置进度条前显示的文本
Percentage() :显示百分比
Bar('#') :设置进度条形状
ETA() :预计剩余时间将显示
Timer() :显示已用时间
更多Python知识,请关注Python视频教程!!