2026-10-21 19:35:56
Python的sys模块主要用于程序与Python解释器的交互,提供操控运行时环境的函数和变量,涵盖命令行参数、模块管理、程序退出、路径操作及标准I/O流控制等功能。
1. sys.argv:获取命令行参数sys.argv[0]:脚本文件名(如temp.py)。
sys.argv[1]及后续元素:用户输入的外部参数。
0:正常退出。
非零值(如1):异常退出,可被调用程序捕获。
获取路径:直接打印sys.path查看所有路径。
添加路径:通过sys.path.append("自定义路径")临时添加路径,使自定义模块可被导入。
sys.stdout.write():直接输出内容(无自动换行,需手动添加n)。
sys.stdin.readline():读取用户输入(需手动去除末尾换行符[:-1])。
重定向示例:将输出重定向到文件。
import sysoriginal_stdout = sys.stdout # 保存原始输出流with open("output.txt", "w") as f: sys.stdout = f # 重定向到文件 print("This will be written to output.txt")sys.stdout = original_stdout # 恢复原始输出流脚本需要接收外部参数时使用sys.argv。
调试模块加载问题或动态扩展搜索路径时操作sys.path和sys.modules。
需要精确控制程序退出行为时调用sys.exit。
替代print实现更灵活的输出或重定向I/O时使用标准流对象。