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