07-07 sys模块

一. 基本用法介绍

# 掌握。
sys.argv  # 用在python程序内接收外部传过来的值. 得到的结果是个列表, 列表的第一个值是执行脚本的路径。之后的值, 是用户传过来的值, 用户以空格隔开传值, 传过来的值会被argv以空格为分隔接收, 安装传入的先后顺序保存到sys.argv这个列表当中.
"""
# 命令行中执行:
C:\Users\>python3 "Y:\test\run.py" 222 333
['Y:\\test\\run.py', '222', '333']
"""
sys.path           # 返回模块的搜索路径,返回一个列表, 列表中第一个元素为当前执行文件的文件夹.

# 了解
sys.exit(n)        # 退出程序,正常退出时exit(0)
sys.version        # 获取Python解释程序的版本信息
sys.maxint         # 最大的Int值
sys.platform       # 返回操作系统平台名称

二. 打印进度条

# 知识储备
"""
'%-50s' : 横杠"-"表的是的是左对齐。使用百分号的格式化, 数字和字符串默认都是右对齐,所以这里我们要指定左对齐。这里的50代表的是这个字符串的宽度是50。
'\r' : 表示的是让光标跳到行首。
"""
# 进度条的效果
"""
[#             ]
[##            ]
[###           ]
[####          ]
"""

# 指定宽度
print('[%-50s]' %'#')
print('[%-50s]' %'##')
print('[%-50s]' %'###')
print('[%-50s]' %'####')

# 打印%
print('%s%%' % (100)) # 第二个%号代表取消第一个%的特殊意义

# 可传参来控制宽度
print('[%%-%ds]' % 50) # [%-50s]
print(('[%%-%ds]' % 50) % '#')
print(('[%%-%ds]' % 50) % '##')
print(('[%%-%ds]' % 50) % '###')

# =========实现打印进度条函数==========
def progress(percent, symbol='#', width=50):
    if percent > 1:
        percent = 1
    show_progress = ("[%%-%ds]" % width) % (int(percent * width) * symbol)
    print("\r%s %.2f%%" % (show_progress, percent * 100), end='')
    
# ================应用================
import time
data_size = 1025
recv_size = 0
while recv_size < data_size:
    time.sleep(0.1) # 模拟数据的传输延迟
    recv_size+=1024 # 每次收1024

    percent=recv_size / data_size # 接收的比例
    progress(percent, width=70) # 进度条的宽度70
posted @ 2020-03-30 23:32  给你加马桶唱疏通  阅读(124)  评论(0编辑  收藏  举报