python sys 常用方法_Python sys模块常用方法

上节提到模块和库是不同的东西,作用也不完全相同。内置模块使用 C语言编写,提供了对系统功能的访问,例如 sys 模块并不在Lib目录下。但在 Lib 目录下可以找到 string.py、uuid.py 等模块,这些模块提供了 Python 内置对字符串、日期、时间、哈希、队列等功能的支持。虽然Python内置模块和标准库并不是同一种东西,但大多数情况下在使用时并没有对这二者进行详细区分。

安装完毕Python 3.7.2后,可用的内置模块和标准库共计 224 个,以下简单介绍常用的 sys 模块和 datetime 模块(库)的基本功能,其他内置模块(库)的相关功能可参看Python文档。本节教程先来介绍 sys 模块。datetime 模块下节介绍。

sys 模块提供了一系列有关 Python 运行环境的变量和函数,其常用属性和方法如表 1 所示。

表 1:sys 模块常用属性和方法

属性或方法

描述

sys.argv

获取命令行参数列表,第一个参数是程序本身

sys.exit(n)

退出 Python 程序,exit(0) 表示正常退出。当参数非 0 时,会引发一个 SystemExit 异常,可以在程序中捕获该异常

sys.version

获取 Python 解释程器的版本信息

sys.maxsize

最大的 Int 值,在 64 位操作系统上是 263-1

sys.path

返回模块的搜索路径,初始化时使用 PYTHONPATH 环境变量的值

sys.platform

返回操作系统平台名称

sys.stdin

输入相关

sys.stdout

输出相关

sys.stderr

错误相关

sys.exc_infd()

返回异常信息三元元组

sys.getdefaultencoding()

获取系统当前编码,默认为 UTF-8

sys.setdefaultencoding()

设置系统的默认编码

sys.getfilesystemencoding()

获取文件系统使用编码方式,默认是 UTF-8

sys.modules

以字典的形式返回所有当前 Python 环境中已经导入的模块

sys.builtin_module_names

返回一个列表,包含所有已经编译到 Python 解释器里的模块的名字

sys.copyright

当前 Python 的版权信息

sys.flags

命令行标识状态信息列表

sys.getrefcount(object)

返回对象的引用数量

sys. getrecursionlimit()

返回 Python 最大递归深度,默认为 1000

sys.getsizeof(object[, default])

返回对象的大小

sys.getswitchinterval()

返回线程切换时间间隔,默认为0.005秒

sys.setswitchinterval(interval)

设置线程切换的时间间隔,单位为秒

sys. getwindowsversion()

返回当前 Windows 系统的版本信息

sys.hash_info

返回 Python 默认的哈希方法的参数

sys.implementation

当前正在运行的 Python 解释器的具体实现,如 CPython

sys.thread_info

当前线程信息

以下是调用表 1 中部分属性或方法的代码:

import sys

sys.version

sys.platform

sys.getdefaultencoding()

sys.copyright

sys.getwindowsversion()

sys.implementation

上述代码的运行结果如下所示:

>>> import sys

>>> sys.version

'3.7.2rc1 (tags/v3.7.2:9a3ffc0492, Apr 23 2020, 21:39:28) [MSC v.1916 64 bit (AMD64)]'

>>> sys.platform

'win32'

>>> sys.getdefaultencoding()

'utf-8'

>>> sys.copyright

'Copyright (c) 2001-2020 Python Software Foundation.\nAll Rights Reserved.\n\nCopyright (c) 2000 BeOpen.com.\nAll Rights Reserved.\n\nCopyright (c) 1995-2001 Corporation for National Research Initiatives.\nAll Rights Reserved.\n\nCopyright (c) 1991-1995 Stichting Mathematisch Centrum, Amsterdam.\nAll Rights Reserved.'

>>> sys.getwindowsversion()

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

>>> sys.implementation

namespace(cache_tag='cpython-38', hexversion=50856897, name='cpython', version=sys.version_info(major=3, minor=8, micro=3, releaselevel='candidate', serial=1))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值