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文件去除注释的方法
May 25 Python
详解python3中socket套接字的编码问题解决
Jul 01 Python
SVM基本概念及Python实现代码
Dec 27 Python
python 多线程中子线程和主线程相互通信方法
Nov 09 Python
Python学习笔记之自定义函数用法详解
Jun 08 Python
python3 常见解密加密算法实例分析【base64、MD5等】
Dec 19 Python
Python pandas如何向excel添加数据
May 22 Python
Python 程序员必须掌握的日志记录
Aug 17 Python
Python descriptor(描述符)的实现
Nov 15 Python
Selenium+BeautifulSoup+json获取Script标签内的json数据
Dec 07 Python
Pytorch DataLoader shuffle验证方式
Jun 02 Python
Python matplotlib可视化之绘制韦恩图
Feb 24 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抓取https的内容的代码
2010/04/06 PHP
在Laravel5中正确设置文件权限的方法
2019/05/22 PHP
写JQuery插件的基本知识
2013/11/25 Javascript
实现图片预加载的三大方法及优缺点分析
2014/11/19 Javascript
jquery+ajax验证不通过也提交表单问题处理
2014/12/12 Javascript
jquery中的工具使用方法$.isFunction, $.isArray(), $.isWindow()
2015/08/09 Javascript
干货分享:让你分分钟学会javascript闭包
2015/12/25 Javascript
javascript检查某个元素在数组中的索引值
2016/03/30 Javascript
jQuery Dialog 取消右上角删除按钮事件
2016/09/07 Javascript
微信公众号  提示:Unauthorized API function 问题解决方法
2016/12/05 Javascript
原生JS仿QQ阅读点击展开、收起效果
2017/03/08 Javascript
如何理解Vue的.sync修饰符的使用
2017/08/17 Javascript
vue实现提示保存后退出的方法
2018/03/15 Javascript
解决vue 界面在苹果手机上滑动点击事件等卡顿问题
2018/11/27 Javascript
JavaScript如何获取一个元素的样式信息
2019/07/29 Javascript
three.js利用gpu选取物体并计算交点位置的方法示例
2019/11/25 Javascript
node.JS路径解析之PATH模块使用方法详解
2020/02/06 Javascript
JS实现可以用键盘方向键控制的动画
2020/12/11 Javascript
[06:16]第十四期-国士无双绝地翻盘之撼地神牛
2014/06/24 DOTA
[01:07:53]RNG vs VG 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
用python登录Dr.com思路以及代码分享
2014/06/25 Python
Python虚拟环境virtualenv的安装与使用详解
2017/05/28 Python
Python+request+unittest实现接口测试框架集成实例
2018/03/16 Python
django Serializer序列化使用方法详解
2018/10/16 Python
python 并发编程 非阻塞IO模型原理解析
2019/08/20 Python
python求一个字符串的所有排列的实现方法
2020/02/04 Python
python Gabor滤波器讲解
2020/10/26 Python
Python getsizeof()和getsize()区分详解
2020/11/20 Python
伯利陶器:Burleigh Pottery
2018/01/03 全球购物
怎样写好创业计划书的内容
2014/02/06 职场文书
党员违纪检讨书
2014/02/18 职场文书
实习公司领导推荐函
2014/05/21 职场文书
2015年学校政教处工作总结
2015/05/26 职场文书
毕业实习感受与体会
2015/05/26 职场文书
2016年精神文明建设先进个人事迹材料
2016/02/29 职场文书
感恩信:写给爸爸妈妈的一封感谢信
2019/09/12 职场文书