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支持断点续传的多线程下载示例
Jan 16 Python
python写的一个文本编辑器
Jan 23 Python
python中字符串前面加r的作用
Jun 04 Python
python实现数值积分的Simpson方法实例分析
Jun 05 Python
python版学生管理系统
Jan 10 Python
详解Python self 参数
Aug 30 Python
Pytorch Tensor 输出为txt和mat格式方式
Jan 03 Python
ipython jupyter notebook中显示图像和数学公式实例
Apr 15 Python
pandas的resample重采样的使用
Apr 24 Python
PyCharm2020.1.2社区版安装,配置及使用教程详解(Windows)
Aug 07 Python
Python中logging日志的四个等级和使用
Nov 17 Python
PyChon中关于Jekins的详细安装(推荐)
Dec 28 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/10/28 PHP
PHP中Closure类的使用方法及详解
2015/10/09 PHP
php中通用的excel导出方法实例
2017/12/30 PHP
cnblogs TagCloud基于jquery的实现代码
2010/06/11 Javascript
一步一步制作jquery插件Tabs实现过程
2010/07/06 Javascript
两个Javascript小tip资料
2010/11/23 Javascript
基于Jquery的表格隔行换色,移动换色,点击换色插件
2010/12/22 Javascript
HTML DOM的nodeType值介绍
2011/03/31 Javascript
jQuery :nth-child前有无空格的区别分析
2011/07/11 Javascript
载入jQuery库的最佳方法详细说明及实现代码
2012/12/28 Javascript
jQuery垂直多级导航菜单代码分享
2015/08/18 Javascript
浅谈javascript的Touch事件
2015/09/27 Javascript
JavaScript代码里的判断小结
2016/08/22 Javascript
浅谈JS的基础类型与引用类型
2016/09/13 Javascript
vue-router路由参数刷新消失的问题解决方法
2017/06/17 Javascript
使用JS实现图片轮播的实例(前后首尾相接)
2017/09/21 Javascript
Vue中的混入的使用(vue mixins)
2018/06/01 Javascript
浅谈Webpack核心模块tapable解析
2018/09/11 Javascript
微信小程序如何访问公众号文章
2019/07/08 Javascript
深入理解令牌认证机制(token)
2019/08/22 Javascript
js回溯法计算最佳旅行线路代码实例
2019/09/11 Javascript
JavaScript图像放大镜效果实现方法详解
2020/06/28 Javascript
python实现的一个p2p文件传输实例
2014/06/04 Python
Windows8下安装Python的BeautifulSoup
2015/01/22 Python
python获取引用对象的个数方式
2019/12/20 Python
python实现邮件循环自动发件功能
2020/09/11 Python
python实现感知机模型的示例
2020/09/30 Python
Python 调用C++封装的进一步探索交流
2021/03/04 Python
L’urv官网:精品女性运动服品牌
2019/07/07 全球购物
网友共享的几个面试题关于Java和Unix等方面的
2016/09/08 面试题
房产公证书范本
2014/04/10 职场文书
电影雷锋观后感
2015/06/10 职场文书
承兑汇票延期证明
2015/06/23 职场文书
2015年秋季小学开学标语
2015/07/16 职场文书
大学文艺委员竞选稿
2015/11/19 职场文书
CSS 制作波浪效果的思路
2021/05/18 HTML / CSS