今天学习文件的遍历目录以及高级的文件操作
在python中,遍历是将指定的目录下的全部目录(包括子目录)及文件访问一遍。在python中,OS模块的walk()函数用于实现遍历目录的功能,walk()函数的基本语法格式如下
os.walk(top[,topdown][,onerror][,followlinks])
参数 | 说明 |
---|---|
top | 用于指定要遍历内容的根目录 |
topdown | 可选参数,用于指定遍历的顺序,如果值为True,表示自上而下遍历,即先遍历根目录;如果值为False,表示自下而上遍历,即先遍历最后一级子目录。默认值为True |
onerror | 可选参数,用于指定错误的处理方式,默认为忽略,如果不想忽略也可以指定一个错误处理函数。通常情况下采用默认设置 |
followlinks | 可选参数,默认情况下,walk()函数不会向下转化成解析到目录的符号连接,将该参数值设置为True,表示用于指定在支持的系统上访问由符号连接指向的目录 |
高级文件操作
函数 | 说明 |
---|---|
access(path,accessmode) | 获取对文件是否有指定的访问权限(读取、写入、执行权限)。acessmode的值是R_OK(读取)、 W_OK (执行)、 F_OK(存在)如果有指定的权限,则返回1,否则返回0 |
chmod(path,mode) | 修改path指定文件的访问权限 |
remove(path) | 删除path指定的文件路径 |
rename(src,dst) | 将文件或目录src重命名为dst |
stat(path) | 返回path所指的文件的信息 |
startfile(path [,operation]) | 使用关联的应用程序打开path指定的文件 |
下面对常用的操作进行详细介绍
1.删除文件
os.remove(path)
其中path为要删除的文件路径
例如
import os
os.remove("setup.ini")
有时会出现异常(找不到文件)
用下方的代码可以解决上面的异常
import os
path= setup.ini
if os.path.exists(path):
os.remove(path)
else:
print("文件不存在")
2.重命名文件和目录
os.rename(src,dst)
例如:
import os
src="D:\\setup.ini"
drt="D:\\setup.key"
if os.path.exists(src):
os.rename(src,dst)
else:
print("文件不存在")