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正则分组的应用
Nov 10 Python
python实现给字典添加条目的方法
Sep 25 Python
python验证码识别的示例代码
Sep 21 Python
python数据分析数据标准化及离散化详解
Feb 26 Python
python:pandas合并csv文件的方法(图书数据集成)
Apr 12 Python
Python 实现使用dict 创建二维数据、DataFrame
Apr 13 Python
numpy中的高维数组转置实例
Apr 17 Python
python3实现钉钉消息推送的方法示例
Mar 14 Python
Pycharm最新激活码2019(推荐)
Dec 31 Python
关于Python解包知识点总结
May 05 Python
pytorch实现查看当前学习率
Jun 24 Python
Pandas DataFrame求差集的示例代码
Dec 13 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中使用exec,system等函数调用系统命令的方法(不建议使用,可导致安全问题)
2012/09/07 PHP
解决form中action属性后面?传递参数 获取不到的问题
2017/07/21 PHP
PHP cookie,session的使用与用户自动登录功能实现方法分析
2019/06/05 PHP
js实现的真正的iframe高度自适应(兼容IE,FF,Opera)
2010/03/07 Javascript
jQuery EasyUI API 中文文档 - PropertyGrid属性表格
2011/11/18 Javascript
JavaScript中检测变量是否存在遇到的一些问题
2013/11/11 Javascript
Jquery Post处理后不进入回调的原因及解决方法
2014/07/15 Javascript
返回顶部按钮响应滚动且动态显示与隐藏
2014/10/14 Javascript
jQuery实现的感应鼠标悬停图片色彩渐显效果
2015/03/03 Javascript
JavaScript获取网页中第一个图片id的方法
2015/04/03 Javascript
js实现div拖动动画运行轨迹效果代码分享
2015/08/27 Javascript
JavaScript的函数式编程基础指南
2016/03/19 Javascript
第三篇Bootstrap网格基础
2016/06/21 Javascript
js改变透明度实现轮播图的算法
2020/08/24 Javascript
bootstrap导航栏、下拉菜单、表单的简单应用实例解析
2017/01/06 Javascript
浅谈键盘上回车按钮的js触发事件
2017/02/13 Javascript
2020淘宝618理想生活列车自动领喵币js脚本的代码
2020/06/02 Javascript
浅谈JavaScript中你可能不知道URL构造函数的属性
2020/07/13 Javascript
vue addRoutes路由动态加载操作
2020/08/04 Javascript
在vscode 中设置 vue模板内容的方法
2020/09/02 Javascript
[02:03]永远的信仰DOTA2 中国军团历届国际邀请赛回顾
2016/06/26 DOTA
Python去掉字符串中空格的方法
2014/03/11 Python
Python模拟FTP文件服务器的操作方法
2020/02/18 Python
Nginx+Uwsgi+Django 项目部署到服务器的思路详解
2020/05/08 Python
解决pycharm安装第三方库失败的问题
2020/05/09 Python
Python新手学习标准库模块命名
2020/05/29 Python
python实现银行账户系统
2021/02/22 Python
纯CSS3实现运行时钟的示例代码
2021/01/25 HTML / CSS
运动鞋、街头服装、手表和手袋的实时市场:StockX
2020/11/25 全球购物
.net工程师笔试题
2012/06/09 面试题
高中毕业自我鉴定范文
2013/10/02 职场文书
学生干部的自我评价分享
2014/01/18 职场文书
自强之星事迹材料
2014/05/12 职场文书
社区工作者演讲稿
2014/05/23 职场文书
节水宣传标语口号
2015/12/26 职场文书
微软团队与 NASA 科学家和惠普企业(HPE)的工程师合作
2022/04/21 数码科技