from __future__ import division ## 这个是必须被定义在文件的开始的处
import time
from tqdm import tqdm
from progressbar import ProgressBar, AnimatedMarker, Percentage
import sys
progressbar 用法
import sys, time
j = '#'
if __name__ == '__main__': ## 文件是从这里来开始进行执行
for i in range(1, 61):
j += '#' ## 其中j的过程就是在不断的输出#
## 输出stdout(标准输出)可以使用sys.stdout.write
## 这里是来输出进度条所对应的百分比的信息的,其中r是对应的输出数据以后,光标不换行,从而回到最前面
sys.stdout.write(str(int((i / 60) * 100)) + '% ||' + j + '->' + "\r")
sys.stdout.flush()
time.sleep(0.01) ## 控制一次输出是需要多长的时间的。
print(j)
import sys,time
if __name__ == '__main__':
for i in range(1,61):
sys.stdout.write('#'+'->'+"\b\b") ## 通过退格字符,退出两格后,在来输出#号
sys.stdout.flush()
time.sleep(0.1)
print
import sys, time
from progressbar import * ##通过造轮子来更新进度条
total = 1000
# 基本用法
progress = ProgressBar() ## 创建造轮子的对象
for i in progress(range(total)):
time.sleep(0.01)
pbar = ProgressBar().start() ## 是对应的进度条的开始的过程的。
for i in range(1, 1000):
pbar.update(int((i / (total - 1)) * 100)) ## 这是来对应的更新的比列的
time.sleep(0.01)
pbar.finish() ## 结束
#高级用法
## 进度条对完成百分比 Bar选择进度条所对应的样式,ETA()是对应的时间所输出的格式
widgets = ['Progress: ', Percentage(), ' ', Bar(marker=RotatingMarker('>-=')),
' ', ETA(), ' ', FileTransferSpeed()]
## 然后是进度条就是按照widgets这个方式来进行输出,
pbar = ProgressBar(widgets=widgets, maxval=10000000).start()
for i in range(1000000):
# do something
pbar.update(10*i+1) ## 进度条每次更新10
time.sleep(0.00001)
pbar.finish() ## 这里是最后来完成相应的更新的过程的
import sys
import time
from progressbar import AnimatedMarker, Bar, BouncingBar, Counter, ETA, \
FileTransferSpeed, FormatLabel, Percentage, \
ProgressBar, ReverseBar, RotatingMarker, \
SimpleProgress, Timer ## 然后是全部把这些包进行导入后就,我们在来进行使用的过程的。
## 定义的第一例子
pbar = ProgressBar(widgets=[Percentage(),Bar()], maxval=300).start()
for i in range(300):
time.sleep(0.01)
pbar.update(i + 1)
pbar.finish()
## 第二个例子
widgets = ['Test: ', Percentage(), ' ', Bar(marker=RotatingMarker('>-=')),
' ', ETA(), ' ', FileTransferSpeed()]
pbar = ProgressBar(widgets=widgets, maxval=10000000).start()
for i in range(1000000):
# do something
pbar.update(10 * i + 1)
time.sleep(0.00001)
pbar.finish()
## 第三个例子
class CrazyFileTransferSpeed(FileTransferSpeed):
"""It's bigger between 45 and 80 percent."""
def update(self, pbar):
if 45 < pbar.percentage() < 80:
return 'Bigger Now ' + FileTransferSpeed.update(self, pbar)
else:
return FileTransferSpeed.update(self, pbar)
widgets = [CrazyFileTransferSpeed(), ' <<<', Bar(), '>>> ',
Percentage(), ' ', ETA()]
pbar = ProgressBar(widgets=widgets, maxval=10000000)
# maybe do something
pbar.start()
for i in range(2000000):
# do something
pbar.update(5 * i + 1) ## 后面是对应的进度条来进行更新的过程的。
pbar.finish()