1. 程式人生 > >打印進度條 --sys模塊

打印進度條 --sys模塊

ide write aps 返回 print hide clas 一個 數據

四 sys模塊

1 sys.argv           命令行參數List,第一個元素是程序本身路徑
2 sys.exit(n)        退出程序,正常退出時exit(0)
3 sys.version        獲取Python解釋程序的版本信息
4 sys.maxint         最大的Int值
5 sys.path           返回模塊的搜索路徑,初始化時使用PYTHONPATH環境變量的值
6 sys.platform       返回操作系統平臺名稱
技術分享技術分享
import sys
import time
for i in range(100):
    sys.stdout.write(‘\r%s‘ %(‘#‘*i))
    sys.stdout.flush()
    time.sleep(0.5)
進度條實現一:sys.stdout 技術分享技術分享
import sys
import time
for i in range(100):
    time.sleep(0.5)
    print(‘\r%s‘ %(‘#‘*i),end=‘‘,file=sys.stdout,flush=True)
進度條實現二:print 技術分享技術分享 技術分享
#=========知識儲備==========
#指定寬度
print(‘<%-10.3f>‘ %3.22) #總寬度為10,保留3位小數點
#打印結果
#<3.220     >

#打印%號,用%%
width=10
print(‘<%%-%ds>‘ %width)
#打印結果
# <%-10s>

#嵌套的%
width=10
print((‘<%%-%ds>‘ %width) %(‘hello‘))
#打印結果
# <hello     >

#=========實現打印進度條函數==========
import sys
import time
def progress(percent,width=50):
    if percent >= 100:
        percent=100

    show_str=(‘[%%-%ds]‘ %width) %(int(width * percent / 100) * "#") #字符串拼接的嵌套使用
    print("\r%s %d%%" %(show_str, percent),end=‘‘,file=sys.stdout,flush=True)


#=========應用==========
data_size=3030333
recv_size=0
while recv_size < data_size:
    time.sleep(0.001) #模擬數據的傳輸延遲
    recv_size+=1024 #每次收1024

    recv_per=int(100*(recv_size/data_size)) #接收的比例
    progress(recv_per,width=30) #進度條的寬度30

打印進度條 --sys模塊