美文网首页
python之sys模块

python之sys模块

作者: 秣禾 | 来源:发表于2022-04-26 18:15 被阅读0次

1. 简介

sys 模块主要负责与 Python 解释器进行交互,该模块提供了一系列用于控制 Python 运行环境的函数和变量。

之前我们说过 os 模块,该模块与 sys 模块从名称上看着好像有点类似,实际上它们之间是没有什么关系的,os 模块主要负责与操作系统进行交互。

2. 使用

我们先整体看一下 sys 模块都包含哪些内容,如下所示:

>>> import sys
>>> dir(sys)
['__displayhook__', '__doc__', '__excepthook__', '__interactivehook__', '__loader__', '__name__', '__package__', '__spec__', '__stderr__', '__stdin__', '__stdout__', '_clear_type_cache', '_current_frames', '_debugmallocstats', '_enablelegacywindowsfsencoding', '_getframe', '_git', '_home', '_xoptions', 'api_version', 'argv', 'base_exec_prefix', 'base_prefix', 'builtin_module_names', 'byteorder', 'call_tracing', 'callstats', 'copyright', 'displayhook', 'dllhandle', 'dont_write_bytecode', 'exc_info', 'excepthook', 'exec_prefix', 'executable', 'exit', 'flags', 'float_info', 'float_repr_style', 'get_asyncgen_hooks', 'get_coroutine_wrapper', 'getallocatedblocks', 'getcheckinterval', 'getdefaultencoding', 'getfilesystemencodeerrors', 'getfilesystemencoding', 'getprofile', 'getrecursionlimit', 'getrefcount', 'getsizeof', 'getswitchinterval', 'gettrace', 'getwindowsversion', 'hash_info', 'hexversion', 'implementation', 'int_info', 'intern', 'is_finalizing', 'maxsize', 'maxunicode', 'meta_path', 'modules', 'path', 'path_hooks', 'path_importer_cache', 'platform', 'prefix', 'set_asyncgen_hooks', 'set_coroutine_wrapper', 'setcheckinterval', 'setprofile', 'setrecursionlimit', 'setswitchinterval', 'settrace', 'stderr', 'stdin', 'stdout', 'thread_info', 'version', 'version_info', 'warnoptions', 'winver']

对于一些相对常用的变量和函数,我们下面再来具体看一下。

argv
返回传递给 Python 脚本的命令行参数列表。看下示例:

import sys

if __name__ == '__main__':
    args = sys.argv
    print(args)
    print(args[1])

上面文件名为:test.py,我们在控制台使用命令:python test.py 123 abc 执行一下,执行结果如下:

['test.py', '123', 'abc']
123

version
返回 Python 解释器的版本信息。
winver
返回 Python 解释器主版号。
platform
返回操作系统平台名称。
path
返回模块的搜索路径列表。
maxsize
返回支持的最大整数值。
maxunicode
返回支持的最大 Unicode 值。
copyright
返回 Python 版权信息。
modules
以字典类型返回系统导入的模块。
byteorder
返回本地字节规则的指示器。
executable
返回 Python 解释器所在路径。

import sys

print(sys.version)
print(sys.winver)
print(sys.platform)
print(sys.path)
print(sys.maxsize)
print(sys.maxunicode)
print(sys.copyright)
print(sys.modules)
print(sys.byteorder)
print(sys.executable)

stdout
标准输出。看下示例:

import sys

# 下面两行代码等价
sys.stdout.write('Hi' + '\n')
print('Hi')

stdin
标准输入。看下示例:

import sys

s1 = input()
s2 = sys.stdin.readline()
print(s1)
print(s2)

stderr
错误输出。看下示例:

import sys

sys.stderr.write('this is a error message')

exit()
退出当前程序。看下示例:

import sys

print('Hi')
sys.exit()
print('Jhon')

getdefaultencoding()
返回当前默认字符串编码的名称。
getrefcount(obj)
返回对象的引用计数。
getrecursionlimit()
返回支持的递归深度。
getsizeof(object[, default])
以字节为单位返回对象的大小。
setswitchinterval(interval)
设置线程切换的时间间隔。
getswitchinterval()
返回线程切换时间间隔。

import sys

print(sys.getdefaultencoding())
print(sys.getrefcount('123456'))
print(sys.getrecursionlimit())
print(sys.getsizeof('abcde'))
sys.setswitchinterval(1)
print(sys.getswitchinterval())

相关文章

  • Python常用模块

    Python常用模块之time模块 Python常用模块之os模块 Python常用模块之sys模块 Python...

  • os+sys

    python模块之os、sys os+sys:官方文档是最好的模块表达说明。 1、os os模块是与操作系统交互的...

  • 2020-02-18python高手之路学习随笔(2)

    第二章模块与库 2.1 导入系统 Python之禅 sys版本包含很多Python导入系统的信息,可以通过sys....

  • python模块之sys模块

    sys模块 1sys.argv 命令行参数List,第一个元素是程序本身路径 2sys.exi...

  • python模块之sys

    sys.version python解释程序的版本信息 sys.platform 返回操作平台名称 sys.arg...

  • python之sys模块

    1. 简介 sys 模块主要负责与 Python 解释器进行交互,该模块提供了一系列用于控制 Python 运行环...

  • Python基础(八)常见模块

    1. sys模块 sys模块代表了Python解释器,主要用于获取和Python解释器相关的信息 2. os模块 ...

  • Python 入门之 内置模块 -- sys模块

    1、sys模块 sys模块是与python解释器交互的一个接口

  • python3 基础知识补充

    os模块与sys模块 os模块: 包含普遍的操作系统功能,使得程序能够与平台无关 sys模块: 有关python...

  • Python常用模块之sys模块

    SYS模块是与编译器交互的模块 sys.argv指命令行参数,默认第一个参数为脚本本身的文件

网友评论

      本文标题:python之sys模块

      本文链接:https://www.haomeiwen.com/subject/guyqyrtx.html