os.path路径处理大全:跨平台拼接、绝对路径、文件属性判断
博客导语
os.path专门处理路径字符串,不操作磁盘文件,解决90%跨平台路径报错、相对绝对路径混淆、路径后缀截取问题,全部为面试高频考点。
一、路径拼接(绝对不能用+拼接)
禁止字符串+拼接路径,跨系统直接失效,统一使用os.path.join自动适配分隔符
import os base = "/home/data" file = "log.txt" full_path = os.path.join(base,file)二、相对路径与绝对路径转换
os.path.abspath(path):转为绝对路径,最常用
os.path.relpath(path,start):转为相对路径
os.path.dirname(path):获取文件所在目录
os.path.basename(path):获取文件名+后缀
三、文件/文件夹类型判断
# 判断路径是否存在 os.path.exists(path) # 判断是否为文件 os.path.isfile(path) # 判断是否为文件夹 os.path.isdir(path) # 判断是否为绝对路径 os.path.isabs(path)四、高级路径处理
os.path.split:分割目录和文件名
os.path.splitext:分割文件名和后缀,快速判断文件类型
os.path.getsize:获取文件字节大小(不计算文件夹)
补充:Python3.4后推荐pathlib替代os.path,语法更简洁,但老旧项目仍以os.path为主
