python-os.walk函数

os.walk(‘dir’)#生成一个目录下的所有文件名返回一个三元tuple(dirpath,dirnames,filenames).

[root@localhost tmp]# tree test_walk/test_walk/├── dir1│   ├── dir11│   │   └── dir11file1│   ├── dir1file1│   └── dir1file2├── dir2│   ├── dir2file1│   └── dir2file2└── dir3    ├── dir3file1    └── dir3fil
>>> for root,dirs,files in os.walk('/tmp/test_walk/'): print 'ROOT = %s,dirs = %s ,files = %s' %  (root,dirs,files)...ROOT = /tmp/test_walk/,dirs = ['dir1', 'dir3', 'dir2'] ,files = []ROOT = /tmp/test_walk/dir1,dirs = ['dir11'] ,files = ['dir1file1', 'dir1file2']ROOT = /tmp/test_walk/dir1/dir11,dirs = [] ,files = ['dir11file1']ROOT = /tmp/test_walk/dir3,dirs = [] ,files = ['dir3file2', 'dir3file1']ROOT = /tmp/test_walk/dir2,dirs = [] ,files = ['dir2file2', 'dir2file1']
>>> for i in os.walk('/tmp/test_walk/'): print i[0].../tmp/test_walk//tmp/test_walk/dir1/tmp/test_walk/dir1/dir11/tmp/test_walk/dir3/tmp/test_walk/dir2>>> for i in os.walk('/tmp/test_walk/'): print i[1]...['dir1', 'dir3', 'dir2']['dir11'][][][]>>> for i in os.walk('/tmp/test_walk/'): print i[2]...[]['dir1file1', 'dir1file2']['dir11file1']['dir3file2', 'dir3file1']['dir2file2', 'dir2file1']>>>

结果分析

1,先从根目录进行遍历,读取跟目录的文件夹和文件。2,以根目录第一个子目录为新的根目录,读取其文件夹和文件。3,再以2中的第一个子文件夹为根目录,读取文件夹和文件。(这个应该是属于树结构里面的自上而下深度遍历算法)4,读取1步骤里面其他子目录的文件夹和文件。

python-os.walk函数

相关文章:

你感兴趣的文章:

标签云: