千家信息网

Python的sys模块有什么用

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章主要为大家展示了"Python的sys模块有什么用",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Python的sys模块有什么用"这篇文章吧。sy
千家信息网最后更新 2026年11月02日Python的sys模块有什么用

这篇文章主要为大家展示了"Python的sys模块有什么用",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Python的sys模块有什么用"这篇文章吧。

sys作用

Python的sys模块提供访问由解释器使用或维护的变量的接口,并提供了一些函数用来和解释器进行交互,操控Python的运行时环境。

>>> import sys

常用变量

sys.version

返回Python解释器版本号;用于某程序需要用指定版本号运行

>>> import sys>>> sys.version3.8.5 (tags/v3.8.5:580fbb0, Jul 20 2020, 15:57:54) [MSC v.1924 64 bit (AMD64)]

sys.maxsize

表示操作系统承载的最大int值

>>> import sys>>> sys.maxsize9223372036854775807

sys.maxunicode

给出最大Unicode代码点值的整数,即1114111(十六进制0x10FFFF)。

>>> import sys>>> sys.maxunicode1114111

sys.path

当前脚本的path环境变量,如果没有python就找到

>>> import sys>>> sys.path['', 'D:\\Python3.8\\python38.zip', 'D:\\Python3.8\\DLLs', 'D:\\Python3.8\\lib', 'D:\\Python3.8', 'D:\\Python3.8\\lib\\site-packages']

sys.platform

返回操作系统平台名称,在编写跨平台应用时很有用

系统返回值
Windows'win32'
Linux'linux'
Mac'darwin'
>>> import sys>>> sys.platformwin32

sys.argv

将python脚本运行时的脚本名以及参数作为一个list,并输出。实现从程序外部像程序内容传递参数

import sysprint(sys.argv)
E:\Python> python 2.py hello python['2.py', 'hello', 'python']

sys.executable

一个字符串,给出Python解释器的可执行二进制文件的绝对路径。如果Python无法检索其可执行文件的真实路径,sys.executable则将为空字符串或None。

>>> import sys>>> sys.executable'D:\\Python3.8\\python.exe'

sys.byteorder

本地字节顺序的指示符--在大端序(最高有效位优先)操作系统上值为 'big' ,在小端序(最低有效位优先)操作系统上为 'little

>>> import sys>>> sys.byteorder'little'

sys.version_info

包含版本号的五个组件的元组:major,minor, micro,releaselevel和serial。

>>> import sys>>> sys.version_infosys.version_info(major=3, minor=7, micro=3, releaselevel='final', serial=0)

sys.api_version

此解释器的C API版本。

>>> import sys>>> sys.api_version1013

sys.stdin/sys.stdout/sys.stderr

标准输入、输出、错误。

>>> import sys>>> sys.stdin<_io.TextIOWrapper name='' mode='r' encoding='utf-8'>>>> sys.stdout<_io.TextIOWrapper name='' mode='w' encoding='utf-8'>>>> sys.stderr<_io.TextIOWrapper name='' mode='w' encoding='utf-8'>

常用方法

sys.exit()

退出程序,正常退出时exit(0)

import sysprint(sys.exit(0))print(sys.exit(1))

sys.modules

返回系统导入的模块字段,key是模块名,value是模块

>>> import sys>>> sys.modules{'sys': , 'builtins': , '_frozen_importlib': , '_imp': , '_warnings': , '_frozen_importlib_external': , '_io': , 'marshal': , 'nt': , '_thread': , '_weakref': , 'winreg': , 'time': , 'zipimport': , '_codecs': , 'codecs': , 'encodings.aliases': , 'encodings': , 'encodings.utf_8': , '_codecs_cn': , '_multibytecodec': , 'encodings.gbk': , '_signal': , '__main__': , 'encodings.latin_1': , '_abc': , 'abc': , 'io': , '_stat': , 'stat': , '_collections_abc': , 'genericpath': , 'ntpath': , 'os.path': , 'os': , '_sitebuiltins': , '_locale': , '_bootlocale': , 'types': , 'importlib._bootstrap': , 'importlib._bootstrap_external': , 'warnings': , 'importlib': , 'importlib.machinery': , 'importlib.abc': , '_operator': , 'operator': , 'keyword': , '_heapq': , 'heapq': , 'itertools': , 'reprlib': , '_collections': , 'collections': , '_functools': , 'functools': , 'contextlib': , 'importlib.util': , 'mpl_toolkits': , 'site': , 'atexit': }

sys.modules.keys()

返回所有已导入的模块名列表

>>> import sys>>> sys.modules.keys()dict_keys(['sys', 'builtins', '_frozen_importlib', '_imp', '_warnings', '_frozen_importlib_external', '_io', 'marshal', 'nt', '_thread', '_weakref', 'winreg', 'time', 'zipimport', '_codecs', 'codecs', 'encodings.aliases', 'encodings', 'encodings.utf_8', '_codecs_cn', '_multibytecodec', 'encodings.gbk', '_signal', '__main__', 'encodings.latin_1', '_abc', 'abc', 'io', '_stat', 'stat', '_collections_abc', 'genericpath', 'ntpath', 'os.path', 'os', '_sitebuiltins', '_locale', '_bootlocale', 'types', 'importlib._bootstrap', 'importlib._bootstrap_external', 'warnings', 'importlib', 'importlib.machinery', 'importlib.abc', '_operator', 'operator', 'keyword', '_heapq', 'heapq', 'itertools', 'reprlib', '_collections', 'collections', '_functools', 'functools', 'contextlib', 'importlib.util', 'mpl_toolkits', 'site', 'atexit'])

sys.getdefaultencoding()

返回Unicode实现使用的当前默认字符串编码的名称。

>>> import sys>>> sys.getdefaultencoding()'utf-8'

sys.getfilesystemencoding()

返回用于在Unicode文件名和字节文件名之间进行转换的编码名称

>>> import sys>>> sys.getfilesystemencoding()utf-8

sys.getrecursionlimit()

返回最大递归次数

>>> import sys>>> sys.getrecursionlimit()  # 查看当前解释器的最大递归深度1000

sys.setrecursionlimit(num)

设置最大递归次数

>>> import sys>>> sys.setrecursionlimit(1100)  # 将解释器的最大递归深度设置为1100>>> sys.getrecursionlimit()  # 再次查看当前解释器的最大递归深度1100

sys.getsizeof()

获取对象占用的内存大小(用字节表示)

>>> import sys>>> for obj in [int(), float(), list(), tuple(), set(), dict(), object]:...     print(str(obj.__class__).ljust(20), sys.getsizeof(obj))...        24      24       56      40        216       232       416

sys.getrefcount(obj)

返回obj的引用计数。返回的计数通常比预期的高一个,因为它包含(临时)引用作为参数。

>>> import sys>>> a = [1,2,3]>>> b = a>>> c = b>>> sys.getrefcount(a)4

sys.exc_info()

获取当前正在处理的异常类,exc_type、exc_value、exc_traceback当前处理的异常详细信息

>>> import sys>>> sys.exc_info()(None, None, None)

sys.getwindowsversion()

获取Windows的版本,Windows系统中有效

>>> import sys>>> sys.getwindowsversion()sys.getwindowsversion(major=10, minor=0, build=19041, platform=2, service_pack='')

sys.stdin.readline()

从标准输入读一行,会读取末尾的换行符

sys.stdout.write()

向标准输出写入内容

>>> import sys>>> sys.stdout.write("hello world")hello world11

以上是"Python的sys模块有什么用"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

模块 解释器 解释 最大 系统 内容 版本 递归 操作系统 文件 程序 有效 参数 变量 名称 字节 标准 深度 篇文章 脚本 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技有限公司 互联网加科技 互联网科技工作委员会 科技互联网企业 新华互联网科技学院 腾讯阿里互联网科技 金融科技创新监管互联网金融 金融科技和互联网金融 新华互联网科技校企合作 湖南洣水互联网科技有限公司扣款 顶级互联网科技成果有哪些 崇明区互联网教育科技诚信经营 互联网5g黑科技有哪些 中国互联网十大科技股排名 徐州市互联网科技有限公司 锡山区互联网智能科技产品供应 互联网营销推广黑科技 工业互联网科技成果转化 抖集互联网科技技术咨询 安徽零酒互联网科技有限公司 科技和互联网公司 美国互联网科技 鑫亿盛互联网科技 互联网金融科技平台 深圳艾佳互联网科技 广州恒生互联网科技有限 佳云科技和互联网广告 伍佰万互联网科技怎么赚钱 陕西九四连强互联网科技有限公司 长沙渺峰互联网科技有限公司
0