sys是一个和Python解释器关系密切的标准库,它帮助我们访问和Python解释器联系紧密的变量和函数。
sys的官方解释:https://docs.python.org/3/library/sys.html
其中,sys模块常用的变量和函数及其功能见下表:
| sys成员(变量和函数) | 功能描述 |
| sy.argv | 获取运行Python程序的命令行参数。其中sys.argv[0]通常是指该Python程序,sys.argv[1]代表为Python程序提供的第一个参数,sys.argv[2]代表为Python程序提供的第二个参数······以此类推。 |
| sys.path | 是一个字符串列表,其中每个字符串都是一个目录名,在使用import语句导入模块时,解释器就会从这些目录中查找指定的模块。 |
| sys.exit() | 通过引发SystemExit异常来退出程序。将其放在try块中不能阻止finally块的执行。你可以提供一个整数作为参数(默认为0,标识成功),用来标识程序是否成功运行,这是UNIX的一个惯例。 |
| sys.modules | 返回模块名和载入模块对应关系的字典。 |
| sys.platform | 此变量是一个字符串,标识解释器当前正在运行的平台名称,它可能是标识操作系统的名称,也可能是标识其他种类的平台,如果运行Jython的话,就是Java虚拟机。 |
| sys.stdin、sys.stdout、sys.stderr | 这三个模块变量是类文件流对象,分别表示标准输入、标准输出、标准错误。简单理解,Python利用sys.stdin获得输入,利用sys.stdout输出。 |
| sys.flags | 该只读属性返回运行Python命令时指定的旗标。 |
| sys.getfilesystemencoding() | 返回在当前系统中保存文件所用的字符集。 |
| sys.getrefcount(object) | 返回指定对象的引用计数。前面介绍过,当object对象的引用计数为0时,系统会回收该对象。 |
| sys.getswitchinterval() | 返回在当前Python解释器中线程切换的时间间隔。该属性可通过setswitchinterval()函数改变。 |
| sys.implementation | 返回当前Python解释器的实现。 |
| sys.maxsize | 返回Python整数支持的最大值。在32位平台上,该属性值为2**32-1;在64位平台上,该属性值为2**63-1。 |
| sys.executable | 该属性返回Python解释器在磁盘上的存储路径。 |
| sys.byteorder | 显示本地字节序的指示符。如果本地字节序是大端模式,则该属性返回big;否则返回little。 |
| sys.copyright | 该属性返回与Python解释器有关的版权信息。 |
| sys.version | 返回当前Python解释器的版本信息。 |
| sys.winver | 返回当前Python解释器的主版本号。 |
| sys.getrecursionlimit() | 返回Python解释器当前支持的递归深度。该属性可通过setrecursionlimit()方法重新设置。 |
sys获取运行参数
from sys import argv
#输出argv列表的长度
print(len(argv))
#遍历argv列表的每个元素
for arg in argv:
print(arg)
动态修改模块加载路径
import sys
#动态添加g:\fk_ext路径作为模块加载路径
sys.path.append('g:\\fk_ext')
#加载g:\fk_ext路径下的hello模块
import hello
本文详细介绍了Python的sys模块,重点讨论了如何使用sys获取运行参数以及如何动态修改模块的加载路径。sys模块是Python解释器的重要组成部分,提供了与解释器交互的接口。
4万+

被折叠的 条评论
为什么被折叠?



