Python常用模块os.path之文件及路径操作方法


Posted in Python onDecember 03, 2019

以下是 os.path 模块的几种常用方法:

方法 说明
os.path.abspath(path) 返回绝对路径
os.path.basename(path) 返回文件名
os.path.commonprefix(list) 返回list(多个路径)中,所有path共有的最长的路径
os.path.dirname(path) 返回文件路径
os.path.exists(path) 如果路径 path 存在,返回 True;如果路径 path 不存在,返回 False。
os.path.lexists 路径存在则返回True,路径损坏也返回True
os.path.expanduser(path) 把path中包含的"~"和"~user"转换成用户目录
os.path.expandvars(path) 根据环境变量的值替换path中包含的"$name"和"${name}"
os.path.getatime(path) 返回最近访问时间(浮点型秒数)
os.path.getmtime(path) 返回最近文件修改时间
os.path.getctime(path) 返回文件 path 创建时间
os.path.getsize(path) 返回文件大小,如果文件不存在就返回错误
os.path.isabs(path) 判断是否为绝对路径
os.path.isfile(path) 判断路径是否为文件
os.path.isdir(path) 判断路径是否为目录
os.path.islink(path) 判断路径是否为链接
os.path.ismount(path) 判断路径是否为挂载点
os.path.join(path1[, path2[, ...]]) 把目录和文件名合成一个路径
os.path.normcase(path) 转换path的大小写和斜杠
os.path.normpath(path) 规范path字符串形式
os.path.realpath(path) 返回path的真实路径
os.path.relpath(path[, start]) 从start开始计算相对路径
os.path.samefile(path1, path2) 判断目录或文件是否相同
os.path.sameopenfile(fp1, fp2) 判断fp1和fp2是否指向同一文件
os.path.samestat(stat1, stat2) 判断stat tuple stat1和stat2是否指向同一个文件
os.path.split(path) 把路径分割成 dirname 和 basename,返回一个元组
os.path.splitdrive(path) 一般用在 windows 下,返回驱动器名和路径组成的元组
os.path.splitext(path) 分割路径,返回路径名和文件扩展名的元组
os.path.splitunc(path) 把路径分割为加载点与文件
os.path.walk(path, visit, arg) 遍历path,进入每个目录都调用visit函数,visit函数必须有3个参数(arg, dirname, names),dirname表示当前目录的目录名,names代表当前目录下的所有文件名,args则为walk的第三个参数
os.path.supports_unicode_filenames 设置是否支持unicode路径名

os.path.abspath(path)

输入相对路径,返回绝对路径

Python 3.7.0 (v3.7.0:1bf9cc5093, Jun 27 2018, 04:59:51) [MSC v.1914 64 bit (AMD64)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> import os
>>> print(os.path.abspath("."))
C:\Users\28914\AppData\Local\Programs\Python\Python37

os.path.basename(path)

返回路径最后的文件或目录名,单纯的字符串处理,不会管该路径是否存在

>>> import os
>>> os.path.basename("E:\\abc\\efg.txt")
'efg.txt'

os.path.dirname(path)

和os.path.basename相反,返回路径中去除了最后的文件或目录名后的部分,也是单纯的字符串处理

>>> import os
>>> os.path.dirname("E:\\abc\\efg.txt")  
'E:\\abc'

os.path.split(path)

单纯的字符串处理,分割路径,返回由其目录名和文件名组成的元组

>>> import os
>>> os.path.split("E:\\abc\\efg.txt")  
('E:\\abc', 'efg.txt')

os.path.splitext(path)

单纯的字符串处理,分割路径,返回由其文件名和扩展名组成的元组

>>> import os
>>> os.path.splitext("E:\\abc\\efg.txt")  
('E:\\abc\\efg', '.txt')

os.path.join(dirpath,filename)

将路径与文件名拼接,根据操作系统自动使用相应的路径分隔符,Windows用“”,Linux用“/”

>>> import os
>>> os.path.splitext("E:\\abc\\efg.txt")  
('E:\\abc\\efg', '.txt')

os.path.exists(path)

判断文件或目录是否存在,返回True或False

>>> import os
>>> os.path.exists("E:\\abc\\efg.txt")
False

os.path.isdir(path)

判断路径是不是文件夹,路径不存在同样返回False

>>> import os
>>> os.path.isdir("E:\\abc\\efg.txt")
False

os.path.isfile(path)

判断路径是不是文件,路径不存在同样返回False

>>> import os
>>> os.path.isfile("E:\\abc\\efg.txt")
False

os.path.getsize(path)

获取文件大小,单位字节,文件不存在则报错,不能直接用于文件夹

>>> import os
>>> os.path.getsize("D:\\2019-11-07.txt")
5973

os.path.getctime(path)

获取文件创建时间

os.path.getmtime(path)

获取文件最后修改时间

os.path.getatime(path)

获取文件最近访问时间

总结

以上所述是小编给大家介绍的Python常用模块os.path之文件及路径操作方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
python中遍历文件的3个方法
Sep 02 Python
使用Python来开发Markdown脚本扩展的实例分享
Mar 04 Python
python 第三方库的安装及pip的使用详解
May 11 Python
python实现逆序输出一个数字的示例讲解
Jun 25 Python
python实现RabbitMQ的消息队列的示例代码
Nov 08 Python
Python 带有参数的装饰器实例代码详解
Dec 06 Python
详解python 爬取12306验证码
May 10 Python
Python中的字符串切片(截取字符串)的详解
May 15 Python
解决pyshp UnicodeDecodeError的问题
Dec 06 Python
Django添加bootstrap框架时无法加载静态文件的解决方式
Mar 27 Python
零基础学Python之前需要学c语言吗
Jul 21 Python
Python 如何实现文件自动去重
Jun 02 Python
Python中顺序表原理与实现方法详解
Dec 03 #Python
python双向链表原理与实现方法详解
Dec 03 #Python
Python读取实时数据流示例
Dec 02 #Python
简单了解python元组tuple相关原理
Dec 02 #Python
python实现智能语音天气预报
Dec 02 #Python
Python:二维列表下标互换方式(矩阵转置)
Dec 02 #Python
python 实现二维列表转置
Dec 02 #Python
You might like
数据库查询记录php 多行多列显示
2009/08/15 PHP
php 判断数组是几维数组
2013/03/20 PHP
php源代码安装常见错误与解决办法分享
2013/05/28 PHP
PHP获取当前日期所在星期(月份)的开始日期与结束日期(实现代码)
2013/06/18 PHP
关于Sphinx创建全文检索的索引介绍
2013/06/25 PHP
php中的strpos使用示例
2014/02/27 PHP
php动态生成版权所有信息的方法
2015/03/24 PHP
PHP中addslashes()和stripslashes()实现字符串转义和还原用法实例
2016/01/07 PHP
Yii2分页的使用及其扩展方法详解
2016/05/23 PHP
php简单实现文件或图片强制下载的方法
2016/12/06 PHP
php变量与字符串的增删改查操作示例
2020/05/07 PHP
document 和 document.all 分别什么时候用
2006/06/22 Javascript
jquery1.4后 jqDrag 拖动 不可用
2010/02/06 Javascript
基于jquery实现漂亮的动态信息提示效果
2011/08/02 Javascript
JS高级调试技巧:捕获和分析 JavaScript Error详解
2014/03/16 Javascript
JavaScript和JQuery的鼠标mouse事件冒泡处理
2015/06/19 Javascript
jquery模拟进度条实现方法
2015/08/03 Javascript
JavaScript中Object.prototype.toString方法的原理
2016/02/24 Javascript
Bootstrap入门教程一Hello Bootstrap初识
2017/03/02 Javascript
微信小程序实现轨迹回放的示例代码
2019/12/13 Javascript
Python操作MongoDB数据库的方法示例
2018/01/04 Python
pytorch 自定义数据集加载方法
2019/08/18 Python
解决Python列表字符不区分大小写的问题
2019/12/19 Python
python实现百度OCR图片识别过程解析
2020/01/17 Python
利用Python计算KS的实例详解
2020/03/03 Python
pytorch SENet实现案例
2020/06/24 Python
建筑工程技术应届生自荐信
2013/09/27 职场文书
《傅雷家书》教学反思
2014/04/20 职场文书
水污染治理工程专业求职信
2014/06/14 职场文书
工作态度不端正检讨书
2014/10/04 职场文书
初中生毕业评语
2014/12/29 职场文书
2015年大学生社会实践评语
2015/03/26 职场文书
小学语文课《掌声》教学反思
2016/03/03 职场文书
nginx安装以及配置的详细过程记录
2021/09/15 Servers
深入解析Apache Hudi内核文件标记机制
2022/03/31 Servers
Golang Elasticsearches 批量修改查询及发送MQ
2022/04/19 Golang