Python标准库之sys库常用功能详解(python sys模块详解)

网友投稿 457 2022-08-25


Python标准库之sys库常用功能详解(python sys模块详解)

Python标准库之sys库常用功能详解

sys是Python提供的程序与解释器交互的标准库

1、查看版本信息

# coding:utf-8# 开发人员:yangxiaopeng# 开发时间:2022/07/05 22:59import sys# 获取 Python版本信息print(sys.version)# 获取解释器中C的API版本print(sys.api_version)# 获取Windows系统功能版本print(sys.getwindowsversion()) # sys.getwindowsversion(major=10, minor=0, build=17763, platform=2, service_pack='')# 获取Windows系统功能版本print(sys.getwindowsversion())# 获取Python 解释器的版本值print(sys.hexversion) # 50988528# 获取当前正在运行的Python解释器的实现信息的对象print(sys.implementation)# name 当前解释器的名称# version 当前解释器的版本# hexversion 解释器的版本值# cache_tag 缓存标记信息# 获取Windows平台上形成注册表项的版本号print(sys.winver)

2、四大实现详细信息

# coding:utf-8# 开发人员:yangxiaopeng# 开发时间:2022/07/05 22:59import sys# 获取浮点类型的实现信息print(sys.float_info)# 获取哈希元祖的实现信息print(sys.hash_info)# 获取整数类型的实现信息print(sys.int_info)# 获取线程信息print(sys.thread_info)

3、查看Python解释器的相关信息

# coding:utf-8# 开发人员:yangxiaopeng# 开发时间:2022/07/05 22:59import sys# 获取Python解释器导入的内建模块列表print(sys.builtin_module_names)# 获取解释器当前分配的内存块数,此函数主要用于跟踪和调试内存泄漏print(sys.getallocatedblocks())# 获取当前递归的限制,也就是Python解释器堆栈最大深度的值# 该限制可防止无限递归导致C堆栈溢出和Python崩溃# 可以通过setrecursionlimit()来调整print(sys.getrecursionlimit())# 获取解释器的“线程切换间隔。print(sys.getswitchinterval()) # 0.005# 获取当前正在运行的Python解释器的实现信息# name 当前解释器的名称# version 当前解释器的版本# hexversion 解释器的版本值# cache_tag 缓存标记信息print(sys.implementation)# 获取Python解释器是否关闭print(sys.is_finalizing()) # False# 获取当前程序及解释器信息print(sys.orig_argv)# 获取Python 解释器的版权信息print(sys.copyright)# 获取解释器的安装路径信息print(sys.base_exec_prefix)# 获取解释器的安装路径信息print(sys.base_prefix)# 获取python的安装路径print(sys.prefix)

3、设置python解释器信息

4、标准输入、输出和错误流

sys.stdin, 标准输入流sys.stdout,标准输出流sys.stderr,标准错误流

aa = sys.stdin.readline()sys.stderr.write('stderr info\n')sys.stdout.write('stdout info\n')

5、查看系统平台相关信息

# coding:utf-8# 开发人员:yangxiaopeng# 开发时间:2022/07/05 22:59import sys# 获取平台标识,Windows平台的值为‘win32’,linux的值为‘linux’print(sys.platform)# 获取当前平台最大的整形值,与平台位数相关,32位系统平台 为 2**(31-1) -1 ,64位平台为2**(64-1)-1print(sys.maxsize, 2**(64-1) - 1)# 获取当前的默认字符串编码格式print(sys.getdefaultencoding())# 获取在Unicode文件名和字节文件名之间转换的错误模式的名称print(sys.getfilesystemencodeerrors())# 获取在Unicode文件名和字节文件名之间转换的编码名称print(sys.getfilesystemencoding())# 获取由setprofile()设置的全局配置。print(sys.getprofile())aa = 111print(aa)# 获取对象的引用次数print(sys.getrefcount(aa))# 获取对象的大小,单位为字节print(sys.getsizeof(aa))i = 100print(sys.getsizeof(i))# 获取repr()函数对浮点数x的行为方式,short表示repr(x)生成短字符串print(sys.float_repr_style)# 获取 unicode 编码的最大值print(sys.maxunicode)# 获取本地的字节顺序, 不同的CPU采用的字节顺序可能不一样;# 常见的有little-endian和big-endian;# little-endian是指将低位字节放在前面,高位字节放在后面,big-endian刚好相反;# sys.byteorder返回值为little为little-endian,big为big-endianprint(sys.byteorder)# 获取 模块搜索路径的列表 , 由环境变量PYTHONPATH进行初始化及安装时的默认值组成print(sys.path)# 获取python模块的信息print(sys.modules)# 返回值是一个以模块名为key的字典,查看os模块的信息print(sys.modules['os'])

6、其他

# coding:utf-8# 开发人员:yangxiaopeng# 开发时间:2022/07/05 22:59import sys# 获取命令行参数print(sys.argv)# 查看命令行标志的状态print(sys.flags)# 将参数值标准输出sys.displayhook('21313132')# 获取当前正在处理的异常类的异常详细信息# sys.exc_info()返回三个值的元组,type为异常类型、value为异常类型实例traceback为回溯对象print(sys.exc_info())# 定义审计内容def audit_hook(event, *args): if event in ['test', 'lll']: print('event:' + event) else: print(f"{event}未监听")# 注册审计sys.addaudithook(audit_hook)# 调用审计sys.audit('test') # event:testsys.audit('12') # 12未监听# 强制退出程序,参数为程序退出的返回值,正常退出为 sys.exit(0) 或 sys.exit()# sys.exit(0)# 异常退出# sys.exit(-1)

作者:99号程序员


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Python流程控制(Python流程控制语句有哪些)
下一篇:Python标准库time详解
相关文章

 发表评论

暂时没有评论,来抢沙发吧~