python打印進度條


 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%

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM