Python 最簡單進度條 tqdm 示範

程式在執行中很常遇到需要處理、要讓使用者等待的情況,這時候最好提示使用者,讓使用者了解程式正在執行中,並沒有卡死,避免使用者亂按、關閉程式。 進度條就是為此而生,而在指令視窗中要顯示進度有許多方式,現在要示範的可以說是最簡單的一種:使用 tqdm 套件。

安裝套件

在指令視窗中執行下面指令來安裝 tqdm 套件:
    
pip install tqdm
    

range 序列進度條

這是一個簡單的循環(迴圈):
    
    for i in range(10_000):
        for j in range(10_000):
            k = i * j

    print('done')
    

要增加 tqdm 的進度條很簡單,只要在 range 外面包一層 tqdm 即可產生進度條:
    
from tqdm import tqdm

for i in tqdm(range(10_000)):
    for j in range(10_000):
        k = i * j

print('done')
    

執行結果:

自訂進度條進度

要手動指定進度也很簡單:
    
import time
from tqdm import tqdm


print('開始執行')
pbar = tqdm(total=100)

time.sleep(1)
pbar.update(50)

time.sleep(1)
pbar.update(30)

time.sleep(1)
pbar.update(20)

print('執行完畢')
    

執行結果:

自訂進度條描述

從開始到結束可能會經歷很多步驟,這時候也可以加上描述讓使用者知道現在進行到哪裡了,一樣很簡單:
    
import time
from tqdm import tqdm


print('開始執行')
pbar = tqdm(total=100)
pbar.set_description('啟動中')

time.sleep(1)
pbar.set_description('第一步')
pbar.update(50)

time.sleep(1)
pbar.set_description('第二步')
pbar.update(30)

time.sleep(1)
pbar.set_description('第三步')
pbar.update(20)

print('執行完畢')
    

執行結果:


參考資料:
tqdm documentation

留言