一、sys 模块是什么
sys 模块是 Python 用来和 Python 解释器交互的标准库。
- • sys:和 Python 解释器 打交道(运行参数、路径、退出)
二、🔥 最核心:命令行参数 sys.argv
1. 作用
获取运行程序时在命令行输入的参数。
比如运行:
python test.py hello 123
2. 用法
import sys
# sys.argv 是一个列表
print(sys.argv)
3. 结果
- •
sys.argv[0]:脚本文件名(test.py) - •
sys.argv[1]:第一个参数(hello)
4. 完整示例
import sys
# python demo.py 小明 18
print("脚本名:", sys.argv[0])
print("姓名:", sys.argv[1])
print("年龄:", sys.argv[2])
三、🔥 标准输入输出:stdin / stdout / stderr
1. sys.stdout 标准输出
print() 本质就是调用 sys.stdout.write()
import sys
sys.stdout.write("Hello\n") # 等价于 print("Hello")
2. sys.stdin 标准输入
input() 本质就是调用 sys.stdin
msg = sys.stdin.readline()
print(msg)
3. sys.stderr 错误输出
专门打印错误信息
sys.stderr.write("出错了!\n")
四、🔥 Python 搜索路径:sys.path
1. 作用
查看 Python 去哪里找模块(import 时的搜索路径列表)。
import sys
print(sys.path)
2. 临时添加模块路径
如果你自己的模块不在 Python 默认路径里,可以临时加进去:
import sys
sys.path.append("/my/module/path")
# 现在就可以 import 你自己的模块了
import my_module
五、🔥 退出程序:sys.exit()
1. 作用
立即终止程序,比 os.exit() 更标准。
import sys
print("开始")
sys.exit() # 程序直接结束
print("不会执行")
六、🔥 其他常用属性
1. 获取 Python 版本
print(sys.version)
2. 获取操作系统平台
print(sys.platform) # win32 / linux / darwin
3. 获取递归深度
print(sys.getrecursionlimit())
七、sys 模块 高频速查表(必背)
| |
sys.argv | 命令行参数列表 |
sys.path | Python 模块搜索路径 |
sys.exit(n) | |
sys.stdin | |
sys.stdout | |
sys.version | |
sys.platform | |
📝 一句话总结
- •
sys.path:让 Python 找到你的模块 - •
sys.stdout:标准输出(print 底层)