判断目录或是文件是否存在
os.path.exists(path) 复制代码
判断是否是文件或是目录
# 如果文件或是目录不存在也会返回False os.path.isfile(path) os.path.isdir(path) 复制代码
创建/删除目录
os.mkdir(path) os.rmdir(path) 复制代码
得到当前的目录名称
os.path.split(dir_path)[1] 复制代码
这个方法既简单又实用,比如我们输入一个目录路径:
os.path.split('/usr/projects/project1')[1] # 输出 project1 # 实际上,上面的代码是分了2步走: # 第1步:利用os.path.split方法分割路径 os.path.split('/usr/projects/project1') # 输出 ('/usr/projects', 'project1') # 然后第2步取出第2个结果,也就是当前的目录名字 复制代码
循环遍历目录
循环遍历目录有2种方式,一种是常规的递归方法,类似下面这样:
def list_file(path): for file in os.listdir(path): if os.path.isdir(os.path.join(path, file)): list_file(os.path.join(path, file)) print(file) 复制代码
还有一种更好的方式就是用os.walk方法,类似下面这样:
def list_file_by_walk(dir_path): for home, dirs, files in os.walk(dir_path): print(home) print(dirs) # files中是文件列表 for file_name in files: print(file_name) 复制代码
拓展——os.walk方法的几个参数简单介绍一下:
home:这个是当前遍历的目录,比如说是 /usr/projects/
dirs:是这个目录(home目录)下面的所有文件夹(也就是子目录)
files:是这个目录(home目录)下所有的文件
好了以上就是操作文件目录的全部内容了,大家学习下吧~