os.walk()遍历文件夹/文件

天行健,君子以自强不息;地势坤,君子以厚德载物。


每个人都有惰性,但不断学习是好好生活的根本,共勉!


文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。


1. 代码内容

import os

#所需访问的文件夹
filePath = "F:\PythonTest"
# 遍历的逻辑:每次遍历从最外层文件夹遍历文件夹和文件,遇到文件夹就会继续进入文件夹遍历
#只有把文件夹所有子文件夹遍历完,才会进入下一个文件夹遍历
def fileSys():
    #遍历filePath路径对应文件夹
    for root, dirs, files in os.walk(filePath):
        print('-----start-----')
        #root为所遍历的根目录,即第一次遍历的root是PathonTest文件夹的全路径,并依次向里递进,下一次root就是内部的文件夹
        print("root",root)
        #所遍历文件夹中的所有文件夹
        print("dirs",dirs)
        #所遍历文件夹中的所有文件
        print("files",files)
        # 遍历所有文件夹,会把所有文件夹打印
        # for d in dirs:
            #打印拼接后的文件夹全路径
            # print("d::::",os.path.join(root,d))
            #打印文件夹名称
            # print("dirs:------>",d)
        # 遍历所有文件
        # for f in files:
            #打印拼接后的文件全路径
            # print("f::::",os.path.join(root,f))
            # 打印文件名
            # print("files:------>",f)

fileSys()
# if __name__ == "__main__":
    # fileSys()

2. 具体分析过程

2.1 文件(夹)创建

创建文件夹和文件内容
我在本机的F:\PythonTest文件夹下创建文件夹和文件
PythonTest文件夹下有文件夹d1、d2、d3,有文件f1.txt、f2.txt、f3.txt、f4.txt
在这里插入图片描述
d1文件夹中的内容有文件夹d1d1,文件d1f1.txt、d1f2.txt
d1d1文件夹内容为空文件夹

d2文件夹中的内容没有文件夹,有文件d2f1.txt

d3文件夹中的内容有文件夹d3d1,没有文件
d3d1文件夹为空文件夹

如下图
在这里插入图片描述

2.2 运行输出

在这里插入图片描述

2.3 分析对比

第一次遍历的是所给的文件夹目录
第二次遍历是第一次遍历所得的所有目录中的第一个目录
第三次遍历是第二次遍历所得的第一个目录中的第一个子目录
只有在子目录遍历完,才会跳出来遍历上一级目录的下一个目录
在这里插入图片描述


感谢阅读,祝君暴富!

相关推荐

  1. php文件夹

    2023-12-08 21:18:01       41 阅读
  2. Python 文件夹下所有文件夹文件

    2023-12-08 21:18:01       45 阅读
  3. rust递归磁盘目录及文件

    2023-12-08 21:18:01       34 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-08 21:18:01       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-08 21:18:01       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-08 21:18:01       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-08 21:18:01       18 阅读

热门阅读

  1. 【数据结构】链表算法总结

    2023-12-08 21:18:01       38 阅读
  2. GO设计模式——10、组合模式(结构型)

    2023-12-08 21:18:01       25 阅读
  3. 【工具】机器之间传输文件的常用方式

    2023-12-08 21:18:01       37 阅读
  4. Nump数组的拼接详细教程

    2023-12-08 21:18:01       32 阅读
  5. mysql获取时间异常

    2023-12-08 21:18:01       40 阅读
  6. TypeScript中泛型对象、泛型类

    2023-12-08 21:18:01       39 阅读