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模块学习 datetime介绍
Aug 27 Python
简单的连接MySQL与Python的Bottle框架的方法
Apr 30 Python
Python实现简单的代理服务器
Jul 25 Python
python基础知识小结之集合
Nov 25 Python
python九九乘法表的实例
Sep 26 Python
python学习笔记之列表(list)与元组(tuple)详解
Nov 23 Python
详解tensorflow实现迁移学习实例
Feb 10 Python
Python实现钉钉发送报警消息的方法
Feb 20 Python
python微信撤回监测代码
Apr 29 Python
python识别文字(基于tesseract)代码实例
Aug 24 Python
python如何遍历指定路径下所有文件(按按照时间区间检索)
Sep 14 Python
Python使用Pygame绘制时钟
Nov 29 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面向对象之旅:深入理解static变量与方法
2014/01/06 PHP
php中cookie的使用方法
2014/03/29 PHP
php+mongodb判断坐标是否在指定多边形区域内的实例
2016/10/28 PHP
laravel5表单唯一验证的实例代码
2019/09/30 PHP
JavaScript让IE浏览器event对象符合W3C DOM标准
2009/11/24 Javascript
jquery实现奇偶行赋值不同css值
2012/02/17 Javascript
javascript中将Object转换为String函数代码 (json str)
2012/04/29 Javascript
一行代码实现纯数据json对象的深度克隆实现思路
2013/01/09 Javascript
Javascript冒泡排序算法详解
2014/12/03 Javascript
jQuery基于ID调用指定iframe页面内的方法
2016/07/06 Javascript
JQuery之proxy实现绑定代理方法
2016/08/01 Javascript
javascript 注释代码的几种方法总结
2017/01/04 Javascript
express框架实现基于Websocket建立的简易聊天室
2017/08/10 Javascript
JS中移除非数字最多保留一位小数
2018/05/09 Javascript
JavaScript 格式化数字、金额、千分位、保留几位小数、舍入舍去
2019/07/23 Javascript
vue项目部署到nginx/tomcat服务器的实现
2019/08/26 Javascript
Vue+Openlayers自定义轨迹动画
2020/09/24 Javascript
Vue 实现一个简单的鼠标拖拽滚动效果插件
2020/12/10 Vue.js
[53:18]Spirit vs Liquid Supermajor小组赛A组 BO3 第三场 6.2
2018/06/03 DOTA
python获取元素在数组中索引号的方法
2015/07/15 Python
python用Pygal如何生成漂亮的SVG图像详解
2017/02/10 Python
Python中property属性实例解析
2018/02/10 Python
Python解析、提取url关键字的实例详解
2018/12/17 Python
python 实现在shell窗口中编写print不向屏幕输出
2020/02/19 Python
一款利用纯css3实现的超炫3D表单的实例教程
2014/12/01 HTML / CSS
英国女装网上商店:I Saw It First
2018/10/18 全球购物
美国珠宝精品店:Opulent Jewelers
2019/08/20 全球购物
室内设计专业学生的自我评价分享
2013/11/27 职场文书
医科大学毕业生自荐信
2014/02/03 职场文书
预备党员转正材料
2014/12/19 职场文书
2015个人简历自我评价语
2015/03/11 职场文书
幼儿园圣诞节活动总结
2015/05/06 职场文书
党校团干班培训心得体会
2016/01/06 职场文书
CSS实现多个元素在盒子内两端对齐效果
2021/03/30 HTML / CSS
Django显示可视化图表的实践
2021/05/10 Python
Python pygame实现中国象棋单机版源码
2021/06/20 Python