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 09 Python
python调用tcpdump抓包过滤的方法
Jul 18 Python
基于wxPython的GUI实现输入对话框(1)
Feb 27 Python
wxPython实现整点报时
Nov 18 Python
python的slice notation的特殊用法详解
Dec 27 Python
python virtualenv虚拟环境配置与使用教程详解
Jul 13 Python
Python容器类型公共方法总结
Aug 19 Python
python+selenium 简易地疫情信息自动打卡签到功能的实现代码
Aug 22 Python
Python 必须了解的5种高级特征
Sep 10 Python
浅析Python中字符串的intern机制
Oct 03 Python
python实战之一步一步教你绘制小猪佩奇
Apr 22 Python
Python爬取用户观影数据并分析用户与电影之间的隐藏信息!
Jun 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 定界符 使用技巧
2009/06/14 PHP
PHP simple_html_dom.php+正则 采集文章代码
2009/12/24 PHP
php判断终端是手机还是电脑访问网站的思路及代码
2013/04/24 PHP
php实现根据IP地址获取其所在省市的方法
2015/04/30 PHP
mod_php、FastCGI、PHP-FPM等PHP运行方式对比
2015/07/02 PHP
js循环改变div颜色具体方法
2013/06/25 Javascript
javascript验证身份证完全方法具体实现
2013/11/18 Javascript
JS延时提示框实现方法详解
2015/11/26 Javascript
js对字符串进行编码的方法总结(推荐)
2016/11/10 Javascript
DropDownList控件绑定数据源的三种方法
2016/12/24 Javascript
vue.js树形组件之删除双击增加分支实例代码
2017/02/28 Javascript
在javaScript中检测数据类型的几种方式小结
2017/03/04 Javascript
js实现旋转木马效果
2017/03/17 Javascript
AngularJS获取json数据的方法详解
2017/05/27 Javascript
文本溢出插件jquery.dotdotdot.js使用方法详解
2017/06/22 jQuery
JavaScript中重名的函数与对象示例详析
2017/09/28 Javascript
JavaScript中的this/call/apply/bind的使用及区别
2020/03/06 Javascript
pyqt和pyside开发图形化界面
2014/01/22 Python
python中global用法实例分析
2015/04/30 Python
Python实现按特定格式对文件进行读写的方法示例
2017/11/30 Python
查看python安装路径及pip安装的包列表及路径
2019/04/03 Python
详解Python的三种可变参数
2019/05/08 Python
python飞机大战pygame游戏背景设计详解
2019/12/17 Python
python继承threading.Thread实现有返回值的子类实例
2020/05/02 Python
python批量处理多DNS多域名的nslookup解析实现
2020/06/28 Python
Spartoo瑞典:鞋子、包包和衣服
2018/09/15 全球购物
Servlet都有哪些方法?主要作用是什么?
2014/03/04 面试题
读书小明星事迹材料
2014/05/03 职场文书
淘宝客服工作职责
2014/07/11 职场文书
幼儿教师年度个人总结
2015/02/05 职场文书
2015年中秋节演讲稿
2015/03/20 职场文书
2016教师党员学习心得体会
2016/01/21 职场文书
MySQL深度分页(千万级数据量如何快速分页)
2021/07/25 MySQL
在Centos 8.0中安装Redis服务器的教程详解
2022/03/21 Redis
Spring Boot 使用 Spring-Retry 进行重试框架
2022/04/24 Java/Android
如何Tomcat中使用ipv6地址
2022/05/06 Servers