python os 和 sys 模块的区别

本文对比分析了Python中os和sys模块的功能与用途,os模块主要用于操作系统交互,提供文件和目录的操作;sys模块则用于与Python解释器交互,提供运行时环境的控制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

os 和 sys 是两个非常常见的和操作系统交互的模块,一直不太懂二者的区别,在总结 Django 的过程中感觉不太懂路径 os.path.abspath(__file__) 的问题,搜索研究了一下。


官方文档里对于二者区别有这样的描述:

os: This module provides a portable way of using operating system dependent functionality.

翻译:这个模块提供了一种方便的使用操作系统函数的方法

sys:This module provides access to some variables used or maintained by the interpreter and to functions that interact strongly with the interpreter.

翻译:该模块提供对解释器使用或维护的一些变量的访问,以及与解释器强烈交互的函数


os 常用方法

os.remove()  # 删除文件
os.rename()  # 重命名文件
os.walk()  # 生成目录树下的所有文件名
os.chdir()  # 改变目录
os.makir/makedirs  # 创建目录/多层目录
os.rmdir/removedirs  # 删除目录/多层目录
os.listdir()  # 列出指定目录的文件
os.getcwd()  # 取得当前工作目录
os.chmod()  # 改变目录权限
os.path.basename()  # 去掉目录路径,返回文件名
os.path.dirname()  # 去掉文件名,返回目录路径
os.path.join()  # 将分离的各部分组合成一个路径名
os.path.split()  # 返回( dirname(), basename()) # 元组
os.path.splitext()  # 返回 (filename, extension) 元组
os.path.getatime\ctime\mtime  # 分别返回最近访问、创建、修改时间
os.path.getsize()  # 返回文件大小
os.path.exists()  # 是否存在
os.path.isabs()  # 是否为决定路径
os.path.isdir()  # 是否为目录
os.path.isfile()  # 是否为文件

os.path.abspath(__file__)  # 结合 os.path.dirname() 使用,用来返回文件的绝对路径

sys 常用方法

sys.argv  # 命令行参数 list,第一个元素是程序本身路径
sys.modules.keys()  # 返回所有已经导入的模块列表
sys.exc_info()  # 获取当前正在处理的异常类,exc_type、exc_value、exc_traceback当前处理的异常详细信息
sys.exit(n)  # 退出程序,正常退出时exit(0)
sys.hexversion  # 获取 python 解释程序的版本值,
sys.version  # 获取python 解释程序的版本信息
sys.maxint  # 最大的Int值
sys.maxunicode  # 最大的Unicode值
sys.modules  # 返回系统导入的模块字段,key是模块名,value是模块
sys.path  # 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
sys.platform  # 返回操作系统平台名称
sys.stdout  # 标准输出
sys.stdin  # 标准输入
sys.stderr  # 错误输出
sys.exc_clear()  # 用来清除当前线程所出现的当前的或最近的错误信息
sys.exec_prefix  # 返回平台独立的python文件安装的位置
sys.byteorder  # 本地字节规则的指示器,big-endian平台的值是'big',little-endian平台的值是'little'
sys.copyright  # 记录python版权相关的东西
sys.api_version  # 解释器的C的API版本

总结

os 模块负责程序与操作系统的交互,提供了访问操作系统底层的接口;

sys 模块负责程序与 python 解释器的交互,提供了一系列的函数和变量,用于操控 python 的运行时环境;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值