【Python】(os.path)绝对路径、路径拼接、拆分出文件名、拆分出扩展名、判断文件、获取文件日期
文件操作时,总会遇到路径问题,例如:相对路径转为绝对路径、路径拼接、将路径的文件目录和文件名拆分、将路径的文件名和扩展名拆分、只想获取文件名、只想获取扩展名等。
也会涉及到判断是文件还是文件夹,以及获取文件信息(文件大小、创建日期、修改日期、访问日期等)。
判断是否是绝对路径:os.path.isabs(…)
参数:path。
返回:True/False。相对路径,返回False;绝对路径,返回True。
import os
os.path.isabs('NEWS.txt') # 返回:False
os.path.isabs(r'E:/Program Files (x86)/python/NEWS.txt') # 返回:True
相对路径转为绝对路径:os.path.abspath(…)
参数:path。
返回:字符串。
import os
os.path.abspath('NEWS.txt') # 返回:'E:\\Program Files (x86)\\python\\NEWS.txt'
路径拼接:os.path.join(…)
参数:path1,path2,…
返回:字符串
import os os.path.join(r'G:/','aa.txt') # 返回:'G:/aa.txt' os.path.join(r'G:/','python','NEWS.txt') # 返回:'G:/python\\NEWS.txt'
文件路径和文件名拆分:os.path.split(…)
参数:path。
返回:元组。元组中2个元素:(文件路径,文件名)。
import os
os.path.split(r'E:/Program Files (x86)/python/NEWS.txt')
# 返回:
('E:/Program Files (x86)/python', 'NEWS.txt')
文件夹也适用。
import os
os.path.split(r'E:/Program Files (x86)/python')
# 返回:
('E:/Program Files (x86)', 'python')
若以”/”结尾,返回的元组中的第2个元素为空字符串。
import os
os.path.split(r'E:/Program Files (x86)/python/')
# 返回:
('E:/Program Files (x86)/python', '')
在路径中获取文件所在文件夹:os.path.dirname(…)
参数:path。
返回:字符串。
注意:文件和文件夹都适用。这也是os.path.split(…)返回的元组中的第一个元素。

在路径中获取文件名:os.path.basename(…)
参数:path。
返回:字符串。
注意:文件和文件夹都适用。这也是os.path.split(…)返回的元组中的第二个元素。

文件名和扩展名拆分:os.path.splitext(…)
参数:path。
返回:元组。元组中2个元素:(文件名,扩展名)。
import os
os.path.splitext(r'E:/Program Files (x86)/python/NEWS.txt')
# 返回:
('E:/Program Files (x86)/python/NEWS', '.txt')
判断文件:
| os.path.exists(path) | 判断文件或文件夹是否存在 |
| os.path.isdir(path) | 判断是否为文件夹 |
| os.path.isfile(path) | 判断是否为文件 |

获取文件信息:
| os.path.getsize(path) |
返回文件的字节数 文件不存在则报错(FileNotFoundError) |
| os.path.getatime(path) |
返回上次访问路径的时间。 文件不存在则报错(FileNotFoundError) |
| os.path.getctime(path) |
返回创建的时间(Windows)。 文件不存在则报错(FileNotFoundError) |
| os.path.getmtime(path) |
返回上次修改的时间。 文件不存在则报错(FileNotFoundError) |

返回的是数字,需转为日期格式。
补充:os.path.sep,返回:’\\’
本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://net2asp.com/304229cdb4.html
