前言
置信大家对进度条肯定不生疏了,比方在咱们装置 python 库的时候能够看到下载的进度,此外在下载文件时也能够看到相似的进度条,比方下图这种:
利用场景:下载文件、工作计时等
明天大家分享 Python 的 6 种不同 的实现实时显示解决进度的形式,文中每一种形式都附带一个案例,并提供官网文档,供大家学习,自定义去批改。
第 1 种:一般进度条
利用打印性能 print 进行实时刷新显示
for i in range(1, 101): print("\r", end="") print(" 进度: {}%: ".format(i),"▓"* (i // 2), end="") sys.stdout.flush() time.sleep(0.05)
第 2 种:带工夫的一般进度条
第 2 种同样通过 print 进行打印进度条,不过还退出了 time 工夫显示,显示进度过程中所须要的工夫
t = 60print("************** 带工夫的进度条 **************")start = time.perf_counter()for i in range(t + 1): finsh = "▓" * i need_do = "-" * (t - i) progress = (i / t) * 100 dur = time.perf_counter() - start print("\r{:^3.0f}%[{}->{}]{:.2f}s".format(progress, finsh, need_do, dur), end="") time.sleep(0.05)
第 3 种:tqdm 库
tqdm 是专门用于进度条的一个 python 库
from tqdm import tqdmfor i in tqdm(range(1, 60)): """代码""" # 假如这代码局部须要 0.05s,循环执行 60 次 time.sleep(0.05)
第 4 种: alive_progress 库
alive_progress 是一个动静的实时显示进度条库
from alive_progress import alive_bar# 假如须要执行 100 个工作 with alive_bar(len(range(100))) as bar: for item in range(100): # 遍历工作 bar() # 显示进度 """代码""" # 假如这代码局部须要 0.05s time.sleep(0.05)
第 5 种:PySimpleGUI 库
PySimpleGUI 也是一种动静进度条库,该库是自带 GUI 界面(基于 PyQt,Tkinter 等)
import PySimpleGUI as sgcount = range(100)for i, item in enumerate(count): sg.one_line_progress_meter('实时进度条', i + 1, len(count), '-key-') """代码""" # 假如这代码局部须要 0.05s time.sleep(0.05)
第 6 种:progressbar 库
import progressbarp = progressbar.ProgressBar()# # 假如须要执行 100 个工作,放到 ProgressBar()中 for i in p(range(100)): """代码""" # 假如这代码局部须要 0.05s time.sleep(0.05)
文中介绍了这 6 种实现实时进度条形式,并且都提供一个案例。对于 Python 库形式的也附带了官网文档,便于大家学习。
文中的 6 种形式都贴了代码
这里我进行了汇总,能够在后盾回复:进度条
大家能够批改代码来扩大它的性能,比方监控股票的能够改成监控基金的,或者是多个金融数据产品,而后依据一些均线策略来揭示你的交易策略等等。明天的文章就到这里,感谢您的浏览,喜爱的话能够点点关注呀,会继续更新哦。