#動态進度條
#第一種
import time
scale = 50 #50表示進度條的長度
print("開始".center(scale //2, "-"))
#居中對齊center
#左對齊為ljust
#右對齊為rjust
#預設左對齊format
start = time.perf_counter()#起始時間
for i in range(scale+1):
z = '>'* i
b = '-' * (scale-i)
h = (i/scale)*100
dur = time.perf_counter() - start
print("\r{:^3.0f}%[{}->{}{:.4f}s]".format(h, z, b, dur), end=' ')
#{:^3.0f}%[{}->{}],表示10%->..........
#{:.4f}s 表示0.0001s,即進度條的秒數精确到小數點後四位。
#end=' ' 控制end為空的,使其不用換行。
time.sleep(0.1) #速度
print('\n'+"結束執行".center(scale//2, '-'))
第一種代碼執行如下:
此動态進度條是連續不換行的。

#動态進度條
#第二種
import time
scale = 50
print("開始".center(scale //2, "-"))#左對齊
start = time.perf_counter()#擷取起始時間
for i in range(scale+1):
z = '*'* i
b = '-' * (scale-i)
h = (i/scale)*20
dur = time.perf_counter() - start
print("\r{:^3.0f}%[{}->{}{:.2f}s]".format(h, z, b, dur))
time.sleep(1)
print('\n'+"結束執行".center(scale//2, '-'))
第二種代碼執行如下:
此動态進度條是換行執行的。