'''
import time
from tqdm import tqdm, trange
for i in tqdm(range(100)):
time.sleep(0.05)
效果:
100%|██████████| 100/100 [00:05<00:00, 19.78it/s]
'''
'''
import time
scale = 50
print("執行開始".center(scale//2,"-")) # .center() 控制輸出的樣式,寬度為 25//2,即 22,漢字居中,兩側填充 -
start = time.perf_counter() # 調用一次 perf_counter(),從計算機系統里隨機選一個時間點A,計算其距離當前時間點B1有多少秒。當第二次調用該函數時,默認從第一次調用的時間點A算起,距離當前時間點B2有多少秒。兩個函數取差,即實現從時間點B1到B2的計時功能。
for i in range(scale+1):
a = '#' * i # i 個長度的 * 符號
b = '.' * (scale-i) # scale-i) 個長度的 . 符號。符號 * 和 . 總長度為50
c = (i/scale)*100 # 顯示當前進度,百分之多少
dur = time.perf_counter() - start # 計時,計算進度條走到某一百分比的用時
print("\r{:^3.0f}%[{}->{}]{:.2f}s".format(c,a,b,dur),end='') # \r用來在每次輸出完成后,將光標移至行首,這樣保證進度條始終在同一行輸出,即在一行不斷刷新的效果;{:^3.0f},輸出格式為居中,占3位,小數點后0位,浮點型數,對應輸出的數為c;{},對應輸出的數為a;{},對應輸出的數為b;{:.2f},輸出有兩位小數的浮點數,對應輸出的數為dur;end='',用來保證不換行,不加這句默認換行。
time.sleep(0.1) # 在輸出下一個百分之幾的進度前,停止0.1秒
print("\n"+"執行結果".center(scale//2,'-'))
效果:
-----------執行開始----------
100%[**************************************************->]5.03s
-----------執行結果----------
'''