GaiFan �考文章

perf_counter 进度�实例:

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,'-'))

测试输出:

-----------执行开始----------
24 %[************->......................................]1.24s