python中sys模块的介绍和使用
作者:鸽子
在python sys模块提供对解释器使用或维护的一些变量的访问,以及与解释器强烈交互的函数!
一.sys模块简介
sys.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.getrecursionlimit() — 返回 Python 解释器当前支持的递归深度。该属性可通过 setrecursionlimit() 方法重新设置。
sys.getswitchinterval() — 返回在当前 Python 解释器中线程切换的时间间隔。该属性可通过 setswitchinterval() 函数改变。
sys.implementation — 返回当前 Python 解释器的实现。
sys.maxsize — 返回 Python 整数支持的最大值。在 32 位平台上,该属性值为 2**31-1;在 64 位平台上,该属性值为 2**63-1。
sys.executable — 该属性返回 Python 解释器在磁盘上的存储路径。
sys.byteorder — 显示本地字节序的指示符。如果本地字节序是大端模式,则该属性返回 big;否则返回 little。
sys.copyright — 该属性返回与 Python 解释器有关的版权信息。
sys.version — 返回当前 Python 解释器的版本信息。
sys.winver — 返回当前 Python 解释器的主版本号。
二.sys模块使用
# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:何以解忧
@Blog(个人博客地址): shuopython.com
@WeChat Official Account(微信公众号):猿说python
@Github:www.github.com
@File:python_zip.py
@Time:2019/11/03 21:25
@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
"""
importsys
# 显示本地字节序的指示符。
print(sys.byteorder)
# 显示Python解释器有关的版权信息
print(sys.copyright)
# 显示Python解释器在磁盘上的存储路径。
print(sys.executable)
# 显示当前系统上保存文件所用的字符集。
print(sys.getfilesystemencoding())
# 显示Python整数支持的最大值
print(sys.maxsize)
# 显示Python解释器所在平台
print(sys.platform)
# 显示当前Python解释器的版本信息。
print(sys.version)
# 返回当前Python解释器的主版本号。
print(sys.winver)
输出结果:
little
Copyright(c)2001-2017PythonSoftwareFoundation.
AllRightsReserved.
Copyright(c)2000BeOpen.com.
AllRightsReserved.
Copyright(c)1995-2001CorporationforNationalResearchInitiatives.
AllRightsReserved.
Copyright(c)1991-1995StichtingMathematischCentrum,Amsterdam.
AllRightsReserved.
G:\ProgramData\Anaconda3\python.exe
utf-8
9223372036854775807
win32
3.6.3|Anaconda,Inc.|(default,Oct152017,03:27:45)[MSCv.190064bit(AMD64)]
3.6