【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,返回:'\\'

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值