Python 實現(xiàn)進度條的六種方式
一、普通進度條
示例代碼
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) if __name__ == '__main__': progress_bar()
展現(xiàn)形式
二、帶時間的進度條
導(dǎo)入time模塊來計算代碼運行的時間,加上代碼迭代進度使用格式化字符串來輸出代碼運行進度
示例代碼
import time scale = 50 print("執(zhí)行開始,祈禱不報錯".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"+"執(zhí)行結(jié)束,萬幸".center(scale // 2,"-"))
展現(xiàn)形式
三、TPDM 進度條
這是一個專門生成進度條的工具包,可以使用pip在終端進行下載,當(dāng)然還能切換進度條風(fēng)格
示例代碼
from time import sleep from tqdm import tqdm # 這里同樣的,tqdm就是這個進度條最常用的一個方法 # 里面存一個可迭代對象 for i in tqdm(range(1, 500)): # 模擬你的任務(wù) sleep(0.01) sleep(0.5)
展現(xiàn)形式
四、progress 進度條
只需要定義迭代的次數(shù)、進度條類型并在每次迭代時告知進度條即可
相關(guān)文檔:https://pypi.org/project/progress/1.5/
示例代碼
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()
展現(xiàn)形式
五、alive_progress 進度條
顧名思義,這個庫可以使得進度條變得生動起來,它比原來我們見過的進度條多了一些動畫效果,需要使用pip進行下載
相關(guān)文檔:https://github.com/rsalmei/alive-progress
示例代碼
from alive_progress import alive_bar # retrieve your set of items items = range(100) # declare your expected total with alive_bar(len(items)) as bar: # iterate as usual for item in items: # process each item bar() time.sleep(0.1)
展現(xiàn)形式
六、可視化進度條
用 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)
展現(xiàn)形式
以上就是Python 實現(xiàn)進度條的六種方式的詳細內(nèi)容,更多關(guān)于python 實現(xiàn)進度條的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Python利用matplotlib實現(xiàn)繪制密度散點圖
這篇文章主要介紹了如何基于Python語言的matplotlib模塊,對Excel表格文件中的指定數(shù)據(jù)加以密度散點圖繪制的方法,有需要的小伙伴可以參考下2024-04-04python3報錯check_hostname?requires?server_hostname的解決
這篇文章主要介紹了python3報錯check_hostname?requires?server_hostname的解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-12-12在Python3.74+PyCharm2020.1 x64中安裝使用Kivy的詳細教程
這篇文章主要介紹了在Python3.74+PyCharm2020.1 x64中安裝使用Kivy的詳細教程,本文通過圖文實例相結(jié)合給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-08-08python用selenium打開瀏覽器后秒關(guān)閉瀏覽器的解決辦法
最近朋友在學(xué)Selenium的時候遇到一個問題,當(dāng)執(zhí)行完selenium程序后,瀏覽器會閃退也就是自動關(guān)閉,這篇文章主要給大家介紹了關(guān)于python用selenium打開瀏覽器后秒關(guān)閉瀏覽器的解決辦法,需要的朋友可以參考下2023-07-07python讀寫刪除復(fù)制文件操作方法詳細實例總結(jié)
這篇文章主要介紹了python讀寫刪除復(fù)制文件操作方法詳細實例總結(jié),需要的朋友可以參考下2021-04-04