关于python里os.walk的一些理解
如果你在文件遍历中,你在递归写的过程中调试了好久。也弄不出相关的结果,你是否希望找到相关的方案对其有一个解答,以下就是对Python os.walk 遍历目录的介绍,通过此方案你就可以对前文中所说的问题迎刃而解。
先看下代码:
1. import os
2. for i in os.walk('c:'+os.sep+'ant'):
3. print i[1]
下面是输出:
1. c:/ant
2. c:/ant/bin
3. c:/ant/docs
4. c:/ant/docs/ant2
5. c:/ant/docs/antlibs
6. c:/ant/docs/antlibs/antunit
7. c:/ant/docs/antlibs/compress
8. c:/ant/docs/antlibs/dotnet
9. c:/ant/docs/antlibs/props
10. c:/ant/docs/antlibs/svn
11. c:/ant/docs/images
12. c:/ant/docs/manual
13. c:/ant/docs/manual/api
14. c:/ant/docs/manual/api/org
15. c:/ant/docs/manual/api/org/apache
16. c:/ant/docs/manual/api/org/apache/tools
17. c:/ant/docs/manual/api/org/apache/tools/ant
18. c:/ant/docs/manual/api/org/apache/tools/ant/dispatch
19. c:/ant/docs/manual/api/org/apache/tools/ant/filters
后面还有很长.
如果不使用这个方法,遍历同样能达到效果.不过使用 os.walk 方便很多了.这个方法返回的是一个三元
1. tupple(dirpath, dirnames, filenames),
其中第一个为起始路径,
第二个为起始路径下的文件夹,
第三个是起始路径下的文件.
dirpath是一个string,代表目录的路径,
dirnames是一个list,包含了dirpath下所有子目录的名字,
filenames是一个list,包含了非目录文件的名字.这些名字不包含路径信息,如果需要得到全路径,需要使用 os.path.join(dirpath, name).
以上内容就是对Python os.walk 遍历目录的实际相关介绍
摘自 http://hi.baidu.com/killhacker888/blog/item/9641a3632acb825beaf8f8e4.html
补充:Web开发 , Python ,