tqdm 是一個 Python 庫,用於在迴圈中顯示進度條,以便更好地了解程式的執行情況。它可以在控制台或 Jupyter Notebook 中使用,並支援多種進度條樣式。了解到這個的契機就是處理資料的時候想要展示進度,不想自己手動寫類似於 count % 10000 == 0 的判斷,然後打印出來,就通過查詢資料知道了這個庫。
使用 tqdm 非常簡單,只需要在迴圈中呼叫 tqdm 函式即可。例如,以下程式碼展示了如何使用 tqdm 來顯示一個簡單的迴圈進度條:
from tqdm import tqdm
for i in tqdm(range(100)):
# do something
在上面的程式碼中,我們匯入了 tqdm 庫,並在迴圈中呼叫了 tqdm 函式。函式的參數是一個可迭代物件,例如 range (100),表示迴圈 100 次。每次迴圈時,tqdm 會自動更新進度條。
除了基本的用法之外,tqdm 還提供了許多其他函式和參數,以便更好地控制進度條的外觀和行為。以下是一些常用的函式和參數:
- position:指定進度條在控制台中的位置。
- leave:指定進度條完成後是否保留在控制台中。
- desc:指定進度條的描述文字。
- unit:指定進度條的單位。
- unit_scale:指定進度條的比例因子。
- ncols:指定進度條的寬度。
- bar_format:指定進度條的格式。
例如,以下程式碼展示了如何使用 tqdm 來自訂進度條的外觀和行為:
from tqdm import tqdm
for i in tqdm(range(100), position=0, leave=True, desc="處理中", unit="項目", unit_scale=0.01, ncols=80, bar_format="{l_bar}{bar:20}{r_bar}{bar:-10b}"):
# do something
在上面的程式碼中,我們在 tqdm 函式中指定了多個參數。position=0 表示進度條在控制台中的位置為第一行;leave=True 表示進度條完成後保留在控制台中;desc="處理中" 表示進度條的描述文字為 "處理中";unit="項目" 表示進度條的單位為 "項目";unit_scale=0.01 表示進度條的比例因子為 0.01;ncols=80 表示進度條的寬度為 80 個字元;bar_format="{l_bar}{bar:20}{r_bar}{bar:-10b}" 表示進度條的格式為左邊界、進度條、右邊界、百分比。
總之,tqdm 是一個非常有用的 Python 庫,可以幫助我們更好地了解程式的執行情況。它提供了多種進度條樣式和參數,可以輕鬆地自訂進度條的外觀和行為。如果你經常需要處理大量資料或耗時操作,那麼 tqdm 是一個值得嘗試的工具。