os.walk()的详细理解(秒懂)
这是个遍历文件夹的操作指令,有三个返回参数root, dirs, files。
root:就是你写的当前文件夹的绝对路径
dirs:当前文件夹下的子文件夹名组成的list
files:返回当前文件夹所含的非文件夹文件,比如jpg或者png或者mp4文件


以族谱为例,遍历顺序是这样的:
第一次遍历:
root:你爷爷的名字
dirs:你大伯,二大伯,你爸爸(老三)的名字(均育有儿女)
files:你爷爷的那个不成器的没结婚的小儿子的名字(老四,你四叔)

第二次遍历:
root:你大伯的名字
dirs:你大伯的大儿子的名字(你大堂哥,育有儿女)(没错你家全是男娃)
files:你大伯的那个不成器的没结婚的小儿子的名字(老二,你二堂哥)

第三次遍历:
root:你大堂哥的名字
dirs:空,你大堂哥的孩子还没有生娃(毕竟连你都还没有对象)
files:你大堂哥的那个不成器的没生娃的大儿子,你大堂哥的那个不成器的没生娃的小儿子

终于你大伯这一支再也找不出有娃的了(同时这一支的所有人也都遍历完了)

第四次遍历:
root:你二大伯的名字
dirs:你二大伯的大儿子的名字(育有儿女)
files:你二伯的那个不成器的没结婚的小儿子的名字
如此下去------------------------------------------------------------


参考文章的作者提到了深度遍历这个概念:

深度优先遍历特点是,选定一个出发点后进行遍历,能前进则前进,若不能前进,回退一步再前进,或再回退一步后继续前进。依此重复,直到所有与选定点相通的所有顶点都被遍历。

参考文章给出了三级目录:

mm文件夹包含sss文件夹和hhh文件夹,sss文件夹又包含hewenyong文件夹,每个文件夹都含有图片若干。作者写了一个for循环:

import os# 操作的文件夹路径
operate_path = r"/media/hewenyong/my_file/soft/jupyter_workspace/mm"for root, dirs, files in os.walk(operate_path):print('root:',root)print('dirs:',dirs)print('files:',files)print('\n')
"""
*********************** 实验结果: *******************************
root: /media/hewenyong/my_file/soft/jupyter_workspace/mm
dirs: ['sss', 'hhh']
files: ['plaid_img_00006051.jpg', 'plaid_img_00006053.jpg', 'plaid_img_00006052.jpg']root: /media/hewenyong/my_file/soft/jupyter_workspace/mm/sss
dirs: ['hewenyong']
files: ['cat.1.jpg', 'cat.0.jpg', 'cat.2.jpg']root: /media/hewenyong/my_file/soft/jupyter_workspace/mm/sss/hewenyong
dirs: []
files: ['cat.93.jpg', 'cat.94.jpg', 'cat.92.jpg']root: /media/hewenyong/my_file/soft/jupyter_workspace/mm/hhh
dirs: []
files: ['abstract_img_00028077.jpg', 'abstract_img_00028073.jpg', 'abstract_img_00028076.jpg', 'abstract_img_00028075.jpg', 'abstract_img_00028074.jpg']
"""

看一下这个输出结果想必容易理解的多

对于os.walk()的认识--python遍历文件执行相应操作相关推荐

  1. python遍历文件_python遍历目录文件脚本的示例

    例子 自己写的一个Python遍历文件脚本,对查到的文件进行特定的处理.没啥技术含量,但是也记录一下吧. 代码如下 复制代码 #!/usr/bin/python # -*- coding: utf-8 ...

  2. python遍历文件夹方法

    python遍历文件夹 import os folder_path = '........' for root, dirs, files in os.walk(folder_path, True): ...

  3. python 遍历文件夹下所有mp3

    python 遍历文件夹下所有mp3 #python import os import shutilg = os.walk('files')for path, d, files in g:for fi ...

  4. python循环遍历word,Python遍历文件写入word

    最近腾讯开放平台上架管理的比较严,需要软件著作权,申请软件著作权又需要五万行项目代码,想想就头大,正好最近在学习Python,好歹也是个程序员,这种重复性的工作,当然是要用程序解决咯,就写了一个遍历项 ...

  5. python对文件的相关操作

    python对文件的相关操作 保存图片 打开文件夹 选择文件打开 后续 保存图片 import cv2 cv2.imwrite('D:\\1.png', img_s) # img是你要保存的图片 打开 ...

  6. Python 的文件路径和操作(一)

    Python 的文件路径和操作(一) 1. 介绍 2. os.path.join() 和 os.mkdir() 3. 绝对路径和相对路径 4. 查看当前目录 os.getcwd() 1. 介绍 操作系 ...

  7. 9.5 Python csv 文件的写入操作

    9.5 Python csv 文件的写入操作 9.5.1 with open( ) as - with open() as ... 是对原有 open() 和 close() 的优化. 使用with ...

  8. Python实现文件夹复制操作

    Python实现文件夹复制操作 文件夹复制是日常开发中不可避免的需求,本文将为大家介绍如何使用Python实现文件夹复制操作. 在Python中,可以使用shutil模块来实现文件和文件夹的复制操作. ...

  9. python使用os.listdir或者os.walk读取多张图片的文件夹出现一个Thumbs.db文件

    这个文件导致通过对文件名处理时的意外,Thumbs.db 参考:http://www.xitongcheng.com/jiaocheng/dnrj_article_15244.html 这个文件网上查 ...

  10. python3指定目录所有excel_如何用python遍历文件夹下的所有excel文件

    import xdrlib ,sys import xlrd def open_excel(file="C:/Users/flyminer/Desktop/新建 Microsoft Exce ...

最新文章

  1. WEBAPI 帖子收藏
  2. python真的这么厉害吗-嗯?python居然可以这么嚣张?这么厉害!到底是为什么?...
  3. 数字对 (长乐一中模拟赛day2T2)
  4. python 按钮事件_从django vi中的按钮获取click事件
  5. maven安装以及eclipse配置maven
  6. 谁能答对这道题?如有兴趣,请留下算法,呵呵~
  7. 2020年中国最具影响力的50位商界领袖:马云、任正非、王传福位列前三
  8. 机器人环境感知算法发展概述
  9. php字符串替换多余逗号_PHP字符过滤函数去除字符串最后一个逗号(rtrim)_php技巧...
  10. Qt 之 HTTP 请求下载(支持断点续传)
  11. qtcpsocket断开_Qt QTcpSocket 对连接服务器中断的不同情况进行判定
  12. Qt实现YOLO目标检测及其界面制作
  13. 干货 | 人工智能应用落地的关键成功要素
  14. VMware克隆虚拟机镜像、导入镜像,图文教程
  15. http协议文字加图解
  16. YOLOX改进之模型轻量化(Lite)
  17. 口红游戏 插口红游戏 h5页面开发
  18. 怎样查询今天是属于一年中的第几周?ww和iw 的周别问题。
  19. python 修饰符和装饰器_将两个python装饰器组合到on中
  20. SNA社交网络R语言分析

热门文章

  1. 2021-10-12
  2. 3lcd和dlp怎么选,DLP和3LCD投影机的选择对比
  3. Atiitt 图像处理的常见功能业务用途与类库与功能实现 目录 1. 常见业务场景 2 1.1. 缩略图 2 1.2. 判断图像大小分辨率要求 长度 宽度 2 1.3. 图像格式 转换,,黑白图像
  4. 二维码资料 目录 1. 二维码QR Code 1 2. 发展历程 1 3. 特点 2 4. 存储 3 5. 分类 3 5.1.1. 按原理分 3 6. 区别 与条码区别 5 7. 什么是码制?
  5. atitit 高并发之道 attilax著.docx 1. 概念 2 2. 并发一般涉及如下几个方面: 4 2.1. 多线程编程(已过时,不介绍) 4 2.2. 异步编程 4 2.3. 并行编程
  6. ATIchinapay银联支付模块.zip
  7. (转)我40个比特币失而复得的经历
  8. 斥资57亿美金,Facebook 入局印度 | 凌云时刻
  9. 地图看世界,给整个世界画一条“胡焕庸线”
  10. 阿里云智能基础产品事业部招聘高性能计算云产品研发与优化专家/高级专家