1 import sys 2 import time 3 total_size=10212 4 recv_size=0 5 def progress(percent,width=50): 6 if percent > 1: #如果百分比大於1的話則取1 7 percent=1 8 show_str=('[%%-%ds]' %width) %(int(percent*width)*'#') 9 #一共50個#,%d 無符號整型數,-代表左對齊,不換行輸出,兩個% % 代表一個單純的%,對應的是后面的s,后面為控制#號的個數 10 # print(show_str) #[############### ] show_str ,每次都輸出一次 11 print('\r%s %s%%' %(show_str,int(percent*100)),end='',file=sys.stdout,flush=True) 12 #\r 代表調到行首的意思,\n為換行的意思,fiel代表輸出到哪,flush=True代表無延遲,立馬刷新。第二個%s是百分比 13 while recv_size < total_size: #當接收的大小小於總大小時 14 time.sleep(0.2) #1024 15 recv_size+=1024 #每次接收1024 16 percent=recv_size/total_size #計算百分比 0.10027418723070897 17 progress(percent,width=30) #調用進度條函數,將百分比傳進去
1 結果: 2 [##############################] 100%
