sys – 系统特定功能
该模块实现了相应CPython模块的子集,如下所述。 有关更多信息,请参阅原始CPython文档:sys.
功能函数
sys.exit(retval=0)
使用给定的退出代码终止当前程序。 根据此,此函数引发“SystemExit”异常。 如果给出了一个参数,它的值作为SystemExit
的参数给出。
sys.print_exception(exc, file=sys.stdout)
使用回溯到类文件对象文件(或默认情况下为sys.stdout
)打印异常。
和 CPython 的不同
这是一个函数的简化版本,它出现在CPython的回溯模块中。 与traceback.print_exception()不同,此函数只接受异常值而不是异常类型,异常值和回溯对象; file参数应该是位置的; 不支持其他参数。 可以在micropython-lib中找到与CPython兼容的回溯模块。
常量
sys.argv
当前程序启动时的可变参数列表。
sys.byteorder
系统的字节顺序(“小端”或“大端”`)。
sys.implementation
包含有关当前Python实现的信息的对象。 对于MicroPython,它具有以下属性:
- name - 字符串“micropython”
- version - 元组 (major, minor, micro), e.g. (1, 7, 0)
此对象是区分MicroPython与其他Python实现的推荐方法(请注意,它仍然可能不存在于非常小的端口中)。
和 CPython 的不同
CPython要求为此对象提供更多属性,但实际有用的最低要求是在MicroPython中实现的。
sys.maxsize
本机整数类型可以在当前平台上保存的最大值,或MicroPython整数类型可表示的最大值,如果它小于平台最大值(对于没有长int支持的MicroPython端口的情况)。
此属性对于检测平台的“位数”(32位与64位等)非常有用。 建议不要直接将此属性与某个值进行比较,而是计算其中的位数:
bits = 0
v = sys.maxsize
while v:
bits += 1
v >>= 1
if bits > 32:
# 64-bit (or more) platform
...
else:
# 32-bit (or less) platform
# Note that on 32-bit platform, value of bits may be less than 32
# (e.g. 31) due to peculiarities described above, so use "> 16",
# "> 32", "> 64" style of comparisons.
sys.modules
加载模块的字典。 在某些端口上,它可能不包含内置模块。
sys.path
用于搜索导入模块的可变目录列表。
sys.platform
运行 MicroPython 的平台。 对于OS / RTOS端口,这通常是OS的标识符,例如,“LINUX”
。 对于裸金属端口,它是电路板的标识符,例如 “pyboard”
用于原始的 MicroPython 参考板。 因此,它可用于区分一块板与另一块板。 如果您需要检查您的程序是否在 MicroPython 上运行(与其他 Python 实现相比),请使用sys.implementation
。
sys.stderr
标准错误 stream
.
sys.stdin
标准输入 stream
.
sys.stdout
标准输出 stream
.
sys.version
实现的 Python 版本, 返回一个字符串
sys.version_info
实现的 Python 版本, 返回一个由整数组成的元组