美文网首页
文件遍历---os.walk(dir)

文件遍历---os.walk(dir)

作者: HellyCla | 来源:发表于2019-03-26 15:46 被阅读0次

    文件遍历

    1. os.walk(dir)

    • 返回的是所有(子)文件夹的三元组(root, dirs, files)
    1. root 所指的是当前正在遍历的这个文件夹的本身的地址
    2. dirs 是一个 list ,内容是该文件夹中所有的目录(即子文件夹的名字)的名字(不包括子目录)
    3. files 同样是 list, 内容是该文件夹中所有的文件(不包括子目录)
    image.png
    • 默认是优先遍历top目录,以及top文件夹的每一个子目录。

    • os.walk 的返回值是一个生成器(generator),也就是说我们需要用循环不断的遍历它(不可以直接print),来获得所有的内容。

    image.png
    • 第一级文件夹里包含的全是子文件夹,没有文件,因此第一个三元组的files为空
    • 第二级文件夹内只有一个文件有子文件夹cla,因此其他的dirs为空,并优先遍历这个子文件夹
    • for f in sorted(os.walk(dir)), 则 f[0]表示返回的所有三元组的root项,f[1]表示所有的子目录(子文件夹)名,f[2]表示所有的子文件名。若有多层文件夹,想要取出所有的子文件进行操作,则直接迭代取出f[2]即可。

    相关文章

      网友评论

          本文标题:文件遍历---os.walk(dir)

          本文链接:https://www.haomeiwen.com/subject/bizgvqtx.html