在日常編程中,我們經常會遇到需要處理耗時任務的情況,例如文件下載、數據處理等等??粗绦蜻\行,卻只能干巴巴地等待,實在令人心焦。別擔心!今天就來教你如何使用 Python 創建炫酷的進度條,告別枯燥等待,讓你的程序動感十足!
1. tqdm:簡單易用的進度條神器tqdm 是一個功能強大的進度條庫,可以輕松地為循環和迭代添加進度條,并顯示進度百分比、已處理數據量、剩余時間等信息。
from tqdm import tqdm
import time
for i in tqdm(range(100)): # 為循環添加進度條
time.sleep(0.01) # 模擬耗時操作
運行這段代碼,你將看到一個不斷更新的進度條,顯示當前進度、剩余時間等信息。
2. 自定義進度條樣式
tqdm 還支持自定義進度條樣式,例如更改顏色、添加描述信息等。
from tqdm import tqdm
for i in tqdm(range(100), desc="數據處理中", colour="green"): # 設置描述信息和顏色
time.sleep(0.01)
3. 多重進度條:同時追蹤多個任務
當需要同時處理多個任務時,可以使用 tqdm 的多重進度條功能,分別顯示每個任務的進度。
from tqdm import tqdm
from time import sleep
from concurrent.futures import ThreadPoolExecutor, as_completed
def task(name):
for i in tqdm(range(100), desc=f"任務 {name}"):
sleep(0.01)
with ThreadPoolExecutor() as executor:
futures = [executor.submit(task, name) for name in ['A', 'B', 'C']]
for _ in tqdm(as_completed(futures), total=len(futures), desc="總進度"):
pass
4. alive-progress:動態炫酷的進度條
alive-progress 庫提供了更加生動、炫酷的進度條樣式,例如旋轉動畫、閃爍效果等,讓你的程序更具吸引力。
from alive_progress import alive_bar
with alive_bar(100, title="下載中") as bar: # 使用 alive_bar 創建進度條
for i in range(100):
bar() # 更新進度條
time.sleep(0.02)
5. 整合進度條到你的項目中
將進度條整合到你的項目中非常簡單,只需將需要顯示進度的代碼包裹在 tqdm 或 alive-progress 的進度條對象中即可。
from alive_progress import alive_bar
import time
# 自定義旋轉動畫字符
spinner_frames = ['?', '?', '?', '?', '?', '?', '?', '?', '?', '?']
with alive_bar(100, title='處理中...', spinner=spinner_frames, bar='blocks', force_tty=True) as bar:
for i in range(100):
bar() # 更新進度條
if i % 10 == 0:
print("\033[2J\033[H", end='') # 清空屏幕,實現閃爍效果
time.sleep(0.1)
總結
進度條是提升用戶體驗的重要元素,可以讓用戶實時了解程序運行狀態,告別枯燥等待。本文介紹了幾種常用的 Python 進度條庫,并提供了詳細的代碼示例,希望能幫助你為自己的程序添加炫酷的進度條。
以上就是“Python 進度條:告別枯燥等待,讓你的程序動感十足!”的詳細內容,想要了解更多Python教程歡迎持續關注編程學習網。
掃碼二維碼 獲取免費視頻學習資料
- 本文固定鏈接: http://m.hgbibkterohyb.com/post/12310/
- 轉載請注明:轉載必須在正文中標注并保留原文鏈接
- 掃碼: 掃上方二維碼獲取免費視頻資料
查 看2022高級編程視頻教程免費獲取