遍历文件夹中的所有子文件夹及子文件使用os.walk()方法非常简单。
语法格式大致如下:
os.walk(top[, topdown=true[, onerror=none[, followlinks=false]]])
- top – 根目录下的每一个文件夹(包含它自己), 产生3-元组 (dirpath, dirnames,
filenames)【文件夹路径, 文件夹名字, 文件名】。 - topdown –可选,为true或者没有指定, 一个目录的的3-元组将比它的任何子文件夹的3-元组先产生
(目录自上而下)。如果topdown为 false, 一个目录的3-元组将比它的任何子文件夹的3-元组后产生 (目录自下而上)。 - onerror – 可选,是一个函数; 它调用时有一个参数, 一个oserror实例。报告这错误后,继续walk,或者抛出exception终止walk。
- followlinks – 设置为 true,则通过软链接访问目录。
示例如下:
显示目录下所有文件
#conding=utf8
import os
g = os.walk(r"e:\test")
for path,dir_list,file_list in g:
for file_name in file_list:
print(os.path.join(path, file_name) )
显示所有子目录
#conding=utf8
import os
g = os.walk("e:\test")
for path,dir_list,file_list in g:
for dir_name in dir_list:
print(os.path.join(path, dir_name) )