Python:目录和文件的操作模块os.path

本文介绍了Python的os.path模块,用于处理文件和目录操作。内容包括:abspath()返回绝对路径,basename()获取文件或目录名,dirname()返回上层路径,exists()检查路径存在性,getsize()返回文件大小,isabs()、isfile()和isdir()判断路径类型,split()和splitdrive()分别用于路径拆分和驱动器分离,以及join()方法用于构建完整路径。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(写于郑州,大年初一)


1、目录和文件的操作模块os.path,在使用之前要先导入:import os.path。它主要有以下几个重要的功能函数:

  • abspath() #返回当前绝对路径
  • basename() #返回路径名称的最后一个文件名或目录名称
  • dirname() #返回指定路径名称的上层上层完整路径名称
  • exists()  #检查指定的路径或文件是否存在
  • getsize()  #返回文件大小(byte)
  • isabs()  #判断是否为绝对路径
  • isfile()  #判断路径是否为文件
  • isdir()  #判断路径是否为目录
  • split()  #把路径分割成dirname和basename,返回一个元组
  • splitdrive()   #一般用在windows下,返回驱动器名和路径组成的元组
  • join(path , file) #把路径和文件名正确地结合成完整路径
2、示例说明,一看就明白。
import os.path
a = os.path.abspath("test1.py")
# test2.py文件在当前路径中确实存在,文件大小是111个字节
print("完整的路径名称是:", a)
print("最后一个文件名是:",os.path.basename(a))
print("上层完整路径名称是:",os.path.dirname(a))
print("文件test1.py在当前路径下存在吗?",os.path.exists("test1.py"))
print("文件test1.py的大小是:",os.path.getsize("test1.py"))
print("路径D:\\PythonTest\\test1.py是绝对路径吗?",os.path.isabs("D:\\PythonTest\\test1.py"))
print("路径\\PythonTest\\test1.py是绝对路径吗?",os.path.isabs("\\PythonTest\\test1.py"))
print("路径\\test1.py是绝对路径吗?",os.path.isabs("\\test1.py"))
print("路径test1.py是绝对路径吗?",os.path.isabs("test1.py"))
print("D:\\PythonTest是一个文件吗?",os.path.isfile("D:\\PythonTest"))
print("D:\\PythonTest\\test1.py是一个文件吗?",os.path.isfile("D:\\PythonTest\\test1.py"))
print("D:是一个目录吗?",os.path.isdir("D:"))
print("D:\\PythonTest是一个目录吗?",os.path.isdir("D:\\PythonTest"))
print("D:\\PythonTest\\test1.py是一个目录吗?",os.path.isdir("D:\\PythonTest\\test1.py"))
print("--------------")
dirFile = os.path.split("D:\\PythonTest\\test1.py")
print("D:\\PythonTest\\test1.py的上层路径和文件名的列表是:",dirFile)
print("D:\\PythonTest\\test1.py的上层路径是:",dirFile[0])
print("D:\\PythonTest\\test1.py的文件名是:",dirFile[1])
print("--------------")
drivePath = os.path.splitdrive("D:\\PythonTest\\test1.py")
print("D:\\PythonTest\\test1.py所在的磁盘驱动器和下层路径的列表是:",drivePath)
print("D:\\PythonTest\\test1.py所在的磁盘驱动器是:",drivePath[0])
path = "D:\\PythonTest"
file = "test1.py"
print("路径\"D:\\PythonTest\"和文件\"test1.py\"结合成完整路径后是:",os.path.join(path, file))
print("------------------------------------------------------------------------------------")
b = os.path.abspath("test100.txt")
# test100.txt文件在当前路径中不存在
print(b)
print(os.path.basename(b))
3、对比一下执行结果:

完整的路径名称是: D:\PythonTest\test1.py
最后一个文件名是: test1.py
上层完整路径名称是: D:\PythonTest
文件test1.py在当前路径下存在吗? True
文件test1.py的大小是: 111
路径D:\PythonTest\test1.py是绝对路径吗? True
路径\PythonTest\test1.py是绝对路径吗? True
路径\test1.py是绝对路径吗? True
路径test1.py是绝对路径吗? False
D:\PythonTest是一个文件吗? False
D:\PythonTest\test1.py是一个文件吗? True
D:是一个目录吗? True
D:\PythonTest是一个目录吗? True
D:\PythonTest\test1.py是一个目录吗? False
--------------
D:\PythonTest\test1.py的上层路径和文件名的列表是: ('D:\\PythonTest', 'test1.py')
D:\PythonTest\test1.py的上层路径是: D:\PythonTest
D:\PythonTest\test1.py的文件名是: test1.py
--------------
D:\PythonTest\test1.py所在的磁盘驱动器和下层路径的列表是: ('D:', '\\PythonTest\\test1.py')
D:\PythonTest\test1.py所在的磁盘驱动器是: D:
路径"D:\PythonTest"和文件"test1.py"结合成完整路径后是: D:\PythonTest\test1.py
------------------------------------------------------------------------------------
D:\PythonTest\test100.txt
test100.txt

Process finished with exit code 0





评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值