Python運行進度條梳理


  • 1.普通進度條

  • 2.帶時間進度條

  • 3.tpdm進度條

  • 4.progress進度條

  • 5.alive_progress進度條

  • 6.可視化進度條

1.普通進度條

在代碼迭代運行中可以自己進行統計計算,並使用格式化字符串輸出代碼運行進度

import sys import time def progress_bar(): for i in range(1, 101): print("\r", end="") print("Download progress: {}%: ".format(i), "" * (i // 2), end="") sys.stdout.flush() time.sleep(0.05) progress_bar()

2.帶時間進度條

導入time模塊來計算代碼運行的時間,加上代碼迭代進度使用格式化字符串來輸出代碼運行進度

import time scale = 50
print("執行開始,祈禱不報錯".center(scale // 2,"-")) start = time.perf_counter() for i in range(scale + 1): a = "*" * i b = "." * (scale - i) c = (i / scale) * 100 dur = time.perf_counter() - start  print("\r{:^3.0f}%[{}->{}]{:.2f}s".format(c,a,b,dur),end = "") time.sleep(0.1) print("\n"+"執行結束,萬幸".center(scale // 2,"-"))

 

3.tpdm進度條

這是一個專門生成進度條的工具包,可以使用pip在終端進行下載,當然還能切換進度條風格

from time import sleep
from tqdm import tqdm
# 這里同樣的,tqdm就是這個進度條最常用的一個方法
# 里面存一個可迭代對象
for i in tqdm(range(1, 500)):
   # 模擬你的任務
   sleep(0.01)
sleep(0.5)

4.progress進度條

你只需要定義迭代的次數、進度條類型並在每次迭代時告知進度條即可,具體代碼案例如下

import time
from progress.bar import IncrementalBar
mylist = [1,2,3,4,5,6,7,8]
bar = IncrementalBar('Countdown', max = len(mylist)) for item in mylist:
    bar.next()
    time.sleep(1)
    bar.finish()

5.alive_progress進度條

顧名思義,這個庫可以使得進度條變得生動起來,它比原來我們見過的進度條多了一些動畫效果,需要使用pip進行下載,代碼案例如下:

from alive_progress import alive_bar
items = range(100)                  # retrieve your set of items
with alive_bar(len(items)) as bar:   # declare your expected total
    for item in items:               # iterate as usual
        # process each item
        bar()
        time.sleep(0.1)

6.可視化進度條

用 PySimpleGUI 得到圖形化進度條,我們可以加一行簡單的代碼,在命令行腳本中得到圖形化進度條,也是使用pip進行下載,代碼案例如下

import PySimpleGUI as sg
import time
mylist = [1,2,3,4,5,6,7,8]
for i, item in enumerate(mylist):
    sg.one_line_progress_meter('This is my progress meter!', i+1, len(mylist), '-key-')
    time.sleep(1)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM