关于 os.walk
python吧
全部回复
仅看楼主
level 9
qwetro 楼主
对这个函数我一直很疑惑,只知道可以这样用
import os
for root, dirs, files in os.walk('./dir1/dir2')
print root
print dirs
print files
但是这里面又有递归的成分。 for xx in aa。这个语句是每次循环都会调用一下 aa吗,那每次调用到 os.walk 的时候岂不是都返回不同的东西,而且 os.walk 对这个循环还有状态记录??
我尝试了几下,虽然有说”os.walk()可以得到一个三元tupple(dirpath, dirnames, filenames)“
但是这个三元组解析不出来,不能用中括号索引,等等等等之类的。。让我对这个 os.walk 甚感不解。。。
求大神指点。。。
2011年11月16日 15点11分 1
level 1
貌似cookbook里有说到这个。,。。
2011年11月16日 17点11分 2
level 9
但是这里面又有递归的成分。 for xx in aa。这个语句是每次循环都会调用一下 aa吗,那每次调用到 os.walk 的时候岂不是都返回不同的东西,而且 os.walk 对这个循环还有状态记录??
aa 是什么, 在第一次执行的时候已经确定.
for i in range(100)
那么 range(100) 是个列表
for i in os.walk(..)
os.walk简单说是个迭带器
2011年11月17日 02点11分 3
level 9
qwetro 楼主
aa 只是个表示符号而已。嘿
迭代器。对python迭代器确实不是很了解,跟STL差不多的吧?。。我看看去。
[拜]
2011年11月17日 02点11分 4
1