sys
Python sys库知识点梳理:
- sys.argv
sys.argv是一个列表,包含了命令行参数列表,可以通过sys.argv获取命令行传入的参数。其中sys.argv[0]表示脚本名称。
示例代码:
import sys
print("脚本名:", sys.argv[0])
print("参数列表:", str(sys.argv))
- sys.path
sys.path是一个列表,包含了Python解释器查找模块的路径列表。可以通过sys.path.append()方法添加自定义模块路径。
示例代码:
import sys
print("Python解释器查找模块的路径列表:", sys.path)
# 添加自定义模块路径
sys.path.append('/path/to/custom/module')
- sys.modules
sys.modules是一个字典,包含了当前Python解释器中已经导入的所有模块。可以通过sys.modules.keys()方法获取所有已导入模块的名称。
示例代码:
import sys
print("已导入的所有模块:", list(sys.modules.keys()))
- sys.stdin、sys.stdout、sys.stderr
sys.stdin、sys.stdout、sys.stderr分别表示标准输入、标准输出和标准错误输出。可以通过重定向这些流来实现输入输出的重定向。
示例代码:
import sys
# 重定向标准输出
sys.stdout = open('output.txt', 'w')
print('Hello, World!')
sys.stdout.close()
# 重定向标准错误输出
sys.stderr = open('error.txt', 'w')
print(1 / 0)
sys.stderr.close()
- sys.exit()
sys.exit()方法用于退出程序,可以传入一个整数参数作为退出状态码。
示例代码:
import sys
sys.exit(0) # 正常退出
sys.exit(1) # 异常退出
总结:
sys库提供了一些与Python解释器和系统交互的函数和变量,包括命令行参数、模块导入、标准输入输出、程序退出等。熟练掌握sys库的使用可以提高Python程序的可靠性和可移植性。