for root, dirs, files in os.walk("/tmp/1/"): print("root", root) print(dirs) print(files)
输出结果
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
# 当前的root是 /tmp/1/
# root下的目录列表为: ['folder2', 'folder1']
# root下的文件列表为 ['file2', 'file1']
# 遍历到的下一个root, 里面的文件和目录都为空. /tmp/1/folder2 [] []
# 遍历到的下一个root /tmp/1/folder1 [] []
遍历所有文件夹
1 2 3 4 5 6 7
import os path=r"c:\users\iuxt\desktop\" # 获取到当前目录下的所有子目录的绝对路径 for root,dirs,files in os.walk(path): for dir in dirs: print(os.path.join(root, dir))
遍历所有文件
1 2 3 4 5 6 7
import os path=r"C:\users\iuxt\desktop\" # 获取到的是此目录下和子目录下所有文件的绝对路径 for root,dirs,files in os.walk(path): for file in files: print(os.path.join(root, file))
遍历到最深的文件夹
1 2 3 4 5
path=r"/tmp/1/"
for root, dirs, files in os.walk(path): iflen(dirs) == 0: print(root)