打印进度条 --sys模块

Posted forjie

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了打印进度条 --sys模块相关的知识,希望对你有一定的参考价值。

四 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模块的主要内容,如果未能解决你的问题,请参考以下文章

python打印进度条

Python打印进度条

进度条打印函数

Jupyter Notebook 中的 tqdm 重复打印新的进度条

python模拟进度条打印

python3-打印一个进度条