第十二篇 os模块
os模块是python标准库中访问操作系统的模块,可以适应于不同的操作系统平台,快速完成文件、目录的相关操作,如查找文件的目录,为文件创建新目录等。
1.os模块的部分常用属性(Windows系统)
示例运行结果:
import os print(os.name) # 返回操作系统的名称 nt print(os.curdir) # . 标识当前文件目录,即指当前文件夹,用"."的效果一致 print(os.path.abspath(os.curdir)) # D:\AA\py 返回当前目录的绝对路径 print(os.pardir) # 标识当前文件的上一目录.. print(os.sep) # 目录之间的分隔符 \ print(os.extsep) # 扩展名分隔符,如one.txt 扩展名分隔符是. print(repr(os.linesep)) # 返回文件行分隔符 '\r\n'
2.os模块的部分常用方法
示例运行结果:
import os # print(os.name) # 返回操作系统的名称 nt # print(os.curdir) # . 标识当前文件目录,即指当前文件夹,用"."的效果一致 # print(os.path.abspath(os.curdir)) # D:\AA\py 返回当前目录的绝对路径 # print(os.pardir) # 标识当前文件的上一目录.. # print(os.sep) # 目录之间的分隔符 \ # print(os.extsep) # 扩展名分隔符,如one.txt 扩展名分隔符是. # print(repr(os.linesep)) # 返回文件行分隔符 '\r\n' os.chdir("d:\\temp") # 将工作目录改为d:\temp print(os.getcwd()) # 查询当前工作目录 d:\temp print(os.listdir('.')) # ['aa.txt'] "."表示当前工作路径d:\temp,当前该文件夹只有一个aa.txt文件 os.mkdir('new') # 在当前文件夹下创建new文件夹 os.makedirs("new2\\new3\\new4") os.rename("aa.txt", "newname.txt") # 重命名文件 os.removedirs("new2\\new3\\new4") os.rmdir('new') # 一次只可以删除一个文件目录,不能一次性删除嵌套文件,另外,removedirs和rmdir删除的目录必须为空,不然报错 os.remove("newname.txt")
3.os.path模块常用方法
示例运行结果:
os.chdir("d:\\temp") # 更改当前目录到d:\\temp print(os.path.isdir('.')) # 判断是否指向的是文件夹 True print(os.path.isfile("d:\\temp\\aa.txt")) # 判断是否指向的是文件 True print(os.path.basename("d:\\temp\\aa.txt")) # 获取文件名 aa.txt print(os.path.dirname("d:\\temp\\aa.txt")) # 获取文件路径 d:\temp print(os.path.split("d:\\temp\\aa.txt")) # 分离目录路径和文件名并返回('d:\\temp', 'aa.txt') print(os.path.splitext("d:\\temp\\aa.txt")) # 分离文件名后缀名('d:\\temp\\aa', '.txt') print(os.path.exists("d:\\temp\\aa.txt")) # 判断路径是否存在 True print(os.path.isabs("new")) # 判断是否为绝对路径 False print(os.path.join("d:\\temp\\new", "text.txt")) # 将提供的路径组合在一起 d:\temp\new\text.txt