如果你在文件遍历中,你在递归写的过程中调试了好久。也弄不出相关的结果,你是否希望找到相关的方案对其有一个解答,以下就是对Python os.walk 遍历目录的介绍,通过此方案你就可以对前文中所说的问题迎刃而解。
先看下代码:
- import os
- for i in os.walk('c:'+os.sep+'ant'):
- print i[1]
下面是输出:
- c:\ant
- c:\ant\bin
- c:\ant\docs
- c:\ant\docs\ant2
- c:\ant\docs\antlibs
- c:\ant\docs\antlibs\antunit
- c:\ant\docs\antlibs\compress
- c:\ant\docs\antlibs\dotnet
- c:\ant\docs\antlibs\props
- c:\ant\docs\antlibs\svn
- c:\ant\docs\images
- c:\ant\docs\manual
- c:\ant\docs\manual\api
- c:\ant\docs\manual\api\org
- c:\ant\docs\manual\api\org\apache
- c:\ant\docs\manual\api\org\apache\tools
- c:\ant\docs\manual\api\org\apache\tools\ant
- c:\ant\docs\manual\api\org\apache\tools\ant\dispatch
- c:\ant\docs\manual\api\org\apache\tools\ant\filters
后面还有很长.
如果不使用这个方法,遍历同样能达到效果.不过使用 os.walk 方便很多了.这个方法返回的是一个三元
- tupple(dirpath, dirnames, filenames),
其中第一个为起始路径,
第二个为起始路径下的文件夹,
第三个是起始路径下的文件.
dirpath是一个string,代表目录的路径,
dirnames是一个list,包含了dirpath下所有子目录的名字,
filenames是一个list,包含了非目录文件的名字.这些名字不包含路径信息,如果需要得到全路径,需要使用 os.path.join(dirpath, name).
以上内容就是对Python os.walk 遍历目录的实际相关介绍。
【编辑推荐】