DarkMatter in Cyberspace
  • Home
  • Categories
  • Tags
  • Archives

python的目录遍历方法说明


python的os.walk()方法十分强大,它对目录的遍历不能指定深度,也就是一直遍历到最深处为止,且采用深度优先的遍历方法,第一个参数是要遍历的文件夹路径,第二个参数topdown如果为真,则从根向下遍历,若为假,则从最深处向根遍历,示例如下:

import os

for root, dirs, files in os.walk('f:\aa', topdown=False):

print('root=',root)

print('dirs=',dirs)

print('files=',files)

输出如下:

root= f:\aa\22\33

dirs= []

files= ['f44']

root= f:\aa\22

dirs= ['33']

files= ['f33']

root= f:\aa\222\333

dirs= []

files= []

root= f:\aa\222

dirs= ['333']

files= []

root= f:\aa

dirs= ['22', '222']

files= ['f22']

如果去掉第二行中的“topdown=False”,输出如下:

root= f:\aa

dirs= ['22', '222']

files= ['f22']

root= f:\aa\22

dirs= ['33']

files= ['f33']

root= f:\aa\22\33

dirs= []

files= ['f44']

root= f:\aa\222

dirs= ['333']

files= []

root= f:\aa\222\333

dirs= []

files= []

如果仅仅是列出第一层目录名,则用listdir():

print(os.listdir('f:\aa'))

的输出是:

['22', '222', 'f22']



Published

Dec 30, 2010

Last Updated

Dec 30, 2010

Category

Tech

Tags

  • 遍历 1
  • listdir 1
  • 目录 4
  • Python 136
  • walk 1

Contact

  • Powered by Pelican. Theme: Elegant by Talha Mansoor