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 相关文章推荐
windows下安装python paramiko模块的代码
Feb 10 Python
更改Python命令行交互提示符的方法
Jan 14 Python
在Python编程过程中用单元测试法调试代码的介绍
Apr 02 Python
浅谈Python单向链表的实现
Dec 24 Python
pandas.dataframe按行索引表达式选取方法
Oct 30 Python
对pycharm 修改程序运行所需内存详解
Dec 03 Python
详解如何管理多个Python版本和虚拟环境
May 10 Python
python列表插入append(), extend(), insert()用法详解
Sep 14 Python
Python如何使用bokeh包和geojson数据绘制地图
Mar 21 Python
python+requests接口压力测试500次,查看响应时间的实例
Apr 30 Python
Pyhton模块和包相关知识总结
May 12 Python
学会Python数据可视化必须尝试这7个库
Jun 16 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中的常用魔术方法总结
2013/08/02 PHP
深入理解JavaScript系列(9) 根本没有“JSON对象”这回事!
2012/01/15 Javascript
JQuery页面图片切换和新闻列表滚动效果的具体实现
2013/09/26 Javascript
JQuery获取表格数据示例代码
2014/05/26 Javascript
nodejs中转换URL字符串与查询字符串详解
2014/11/26 NodeJs
2014年50个程序员最适用的免费JQuery插件
2014/12/15 Javascript
Javascript变量的作用域和作用域链详解
2015/04/02 Javascript
javaScript中with函数用法实例分析
2015/06/08 Javascript
JavaScript事件类型中UI事件详解
2016/01/14 Javascript
jquery层级选择器(匹配父元素下的子元素实现代码)
2016/09/05 Javascript
json数据处理及数据绑定
2017/01/25 Javascript
js 函数式编程学习笔记
2017/03/25 Javascript
layui table设置前台过滤转义等方法
2018/08/17 Javascript
angular1.x ui-route传参的三种写法小结
2018/08/31 Javascript
图解javascript作用域链
2019/05/27 Javascript
基于vue实现一个禅道主页拖拽效果
2019/05/27 Javascript
使用Angular material主题定义自己的组件库的配色体系
2019/09/04 Javascript
[04:14]从西雅图到上海——玩家自制DOTA2主题歌曲应援TI9
2019/07/11 DOTA
详解django.contirb.auth-认证
2018/07/16 Python
Python 3.3实现计算两个日期间隔秒数/天数的方法示例
2019/01/07 Python
django框架面向对象ORM模型继承用法实例分析
2019/07/29 Python
Python实现直方图均衡基本原理解析
2019/08/08 Python
pytorch 模型可视化的例子
2019/08/17 Python
python 利用pyttsx3文字转语音过程详解
2019/09/25 Python
解决Keyerror ''acc'' KeyError: ''val_acc''问题
2020/06/18 Python
利用Python实现Json序列化库的方法步骤
2020/09/09 Python
CSS3 实现的缩略图悬停效果
2020/12/09 HTML / CSS
html5手机端页面可以向右滑动导致样式受影响的问题
2018/06/20 HTML / CSS
医学生实习自荐信
2013/10/01 职场文书
出纳岗位职责
2013/11/09 职场文书
经济国贸专业求职信
2014/06/18 职场文书
无违反计划生育证明格式
2015/06/24 职场文书
表彰大会新闻稿
2015/07/17 职场文书
2016年小学生教师节广播稿
2015/12/18 职场文书
Python下opencv库的安装过程及问题汇总
2021/06/11 Python
Python 如何利用ffmpeg 处理视频素材
2021/11/27 Python