python打印进度条
- 第一种
- 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='')
-
-
- #=========应用==========
- data_size=3030333 #定义传输的数据,实际应用中这个值改一下就可以了
- recv_size=0
- while recv_size < data_size:
- time.sleep(0.01) #模拟数据的传输延迟
- recv_size+=1024 #每次收1024
-
- recv_per=int(100*recv_size/data_size) #接收的比例
- progress(recv_per,width=30) #调用进度条函数,进度条的宽度默认设置为30
-
-
-
-
- 第二种:
- import time
-
- dev_srt=0
- dev_total=33333
-
- while dev_srt<dev_total :
- time.sleep(0.1)
- dev_srt+=1024
- if dev_srt >dev_total:
- dev_srt=dev_total
- # print(dev_srt)
- per=dev_srt/dev_total
- res=int(30*per)*'#'
- print('\r[%-30s] %d%%' %(res,int(100*per)),end='')