'''
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("執(zhí)行開(kāi)始".center(scale//2,"-")) # .center() 控制輸出的樣式,寬度為 25//2,即 22,漢字居中,兩側(cè)填充 -
start = time.perf_counter() # 調(diào)用一次 perf_counter(),從計(jì)算機(jī)系統(tǒng)里隨機(jī)選一個(gè)時(shí)間點(diǎn)A,計(jì)算其距離當(dāng)前時(shí)間點(diǎn)B1有多少秒。當(dāng)?shù)诙握{(diào)用該函數(shù)時(shí),默認(rèn)從第一次調(diào)用的時(shí)間點(diǎn)A算起,距離當(dāng)前時(shí)間點(diǎn)B2有多少秒。兩個(gè)函數(shù)取差,即實(shí)現(xiàn)從時(shí)間點(diǎn)B1到B2的計(jì)時(shí)功能。
for i in range(scale+1):
a = '#' * i # i 個(gè)長(zhǎng)度的 * 符號(hào)
b = '.' * (scale-i) # scale-i) 個(gè)長(zhǎng)度的 . 符號(hào)。符號(hào) * 和 . 總長(zhǎng)度為50
c = (i/scale)*100 # 顯示當(dāng)前進(jìn)度,百分之多少
dur = time.perf_counter() - start # 計(jì)時(shí),計(jì)算進(jìn)度條走到某一百分比的用時(shí)
print("\r{:^3.0f}%[{}->{}]{:.2f}s".format(c,a,b,dur),end='') # \r用來(lái)在每次輸出完成后,將光標(biāo)移至行首,這樣保證進(jìn)度條始終在同一行輸出,即在一行不斷刷新的效果;{:^3.0f},輸出格式為居中,占3位,小數(shù)點(diǎn)后0位,浮點(diǎn)型數(shù),對(duì)應(yīng)輸出的數(shù)為c;{},對(duì)應(yīng)輸出的數(shù)為a;{},對(duì)應(yīng)輸出的數(shù)為b;{:.2f},輸出有兩位小數(shù)的浮點(diǎn)數(shù),對(duì)應(yīng)輸出的數(shù)為dur;end='',用來(lái)保證不換行,不加這句默認(rèn)換行。
time.sleep(0.1) # 在輸出下一個(gè)百分之幾的進(jìn)度前,停止0.1秒
print("\n"+"執(zhí)行結(jié)果".center(scale//2,'-'))
效果:
-----------執(zhí)行開(kāi)始----------
100%[**************************************************->]5.03s
-----------執(zhí)行結(jié)果----------
'''