使用 Python 遍历目录树的方法


Posted in Python onFebruary 29, 2020

假设有这样一个任务,希望对某个文件夹(包括所有子文件夹与文件)中的所有文件进行处理。这就需要遍历整理目录树, 处理遇到的每个文件。

import os
'''
遍历目录树
'''
for folder_name,sub_folders,filenames in os.walk('F:\\dicts'):
 print('当前文件夹:'+folder_name)
 for sub_folder in sub_folders:
 print('所包含的子文件夹:'+sub_folder)
 for filename in filenames:
 print('文件夹 %s 中所包含的文件:%s' %(folder_name,filename))
 print('')

运行结果:

当前文件夹:F:\dicts
所包含的子文件夹:手机
文件夹 F:\dicts 中所包含的文件:865523a5180df385363cc89ebd0eca6b.apk
文件夹 F:\dicts 中所包含的文件:LDOCE5.mdd
文件夹 F:\dicts 中所包含的文件:LDOCE5.mdx
文件夹 F:\dicts 中所包含的文件:sound_us.mdd
文件夹 F:\dicts 中所包含的文件:奶爸1.6G.zip
文件夹 F:\dicts 中所包含的文件:奶爸1.6GMdict词库的补充.rar
文件夹 F:\dicts 中所包含的文件:新牛津英汉双解大词典.mdx
文件夹 F:\dicts 中所包含的文件:柯林斯双解.mdd
文件夹 F:\dicts 中所包含的文件:柯林斯双解.mdx
文件夹 F:\dicts 中所包含的文件:汉语大词典(简体精排).mdx
文件夹 F:\dicts 中所包含的文件:汉语大词典.mdx
文件夹 F:\dicts 中所包含的文件:美国传统英汉双解学习词典.mdx
文件夹 F:\dicts 中所包含的文件:美国传统词典双解.mdx

当前文件夹:F:\dicts\手机
所包含的子文件夹:dicts

当前文件夹:F:\dicts\手机\dicts
文件夹 F:\dicts\手机\dicts 中所包含的文件:sound_us.mdd
文件夹 F:\dicts\手机\dicts 中所包含的文件:新牛津英汉双解大词典.mdx
文件夹 F:\dicts\手机\dicts 中所包含的文件:汉语大词典.mdx
文件夹 F:\dicts\手机\dicts 中所包含的文件:美国传统英汉双解学习词典.mdx
文件夹 F:\dicts\手机\dicts 中所包含的文件:美国传统词典双解.mdx

os.walk() 函数以一个文件夹路径作为入参。然后我们就可以在一个 for 循环语句中使用 os.walk() 函数,遍历这个文件夹的整个目录树。 os.walk() 在每次循环迭代过程中,会返回 3个值:

  • 当前文件夹的名称,字符串形式 。
  • 当前文件夹中子文件夹名称列表 。
  • 当前文件夹中文件的名称列表。

当前文件夹指的是 for 循环内当前迭代的文件夹。注意: 程序的当前工作目录,不会因为 os.walk() 而改变。

ps:下面给大家介绍下Python os.walk() 函数

函数简介

os.walk() 函数用于在目录树中遍历所有的文件及文件夹。

函数输入输出及使用格式

输入:遍历地址path
输出:正在遍历的地址本身root、该地址下所有目录的名称dirs(list)、该地址下所有文件files(list)
使用格式:
'''
root, dirs, files = os.walk(path)
'''

可调参数

topdown = True or False (True优先遍历上层目录top,False优先遍历底层目录down)
onerror=None (默认None,需要一个调用对象,当 walk 需要异常时,会调用
followlinks = True or False(默认False,如果是True,则会遍历目录下的快捷方式实际所指的目录)

总结

到此这篇关于使用 Python 遍历目录树的方法的文章就介绍到这了,更多相关python 遍历目录树内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python解析xml中dom元素的方法
Mar 12 Python
python MySQLdb Windows下安装教程及问题解决方法
May 09 Python
简单谈谈Python中的闭包
Nov 30 Python
Python编程实战之Oracle数据库操作示例
Jun 21 Python
python学习笔记--将python源文件打包成exe文件(pyinstaller)
May 26 Python
Sanic框架安装与简单入门示例
Jul 16 Python
Django 实现前端图片压缩功能的方法
Aug 07 Python
Python获取时间戳代码实例
Sep 24 Python
pandas factorize实现将字符串特征转化为数字特征
Dec 19 Python
基于Python获取docx/doc文件内容代码解析
Feb 17 Python
浅谈python锁与死锁问题
Aug 14 Python
python 镜像环境搭建总结
Sep 23 Python
python 已知一个字符,在一个list中找出近似值或相似值实现模糊匹配
Feb 29 #Python
在python3中实现查找数组中最接近与某值的元素操作
Feb 29 #Python
python pandas移动窗口函数rolling的用法
Feb 29 #Python
基于Python fminunc 的替代方法
Feb 29 #Python
浅谈SciPy中的optimize.minimize实现受限优化问题
Feb 29 #Python
使用python求解二次规划的问题
Feb 29 #Python
Python龙贝格法求积分实例
Feb 29 #Python
You might like
应用开发中涉及到的css和php笔记分享
2011/08/02 PHP
PHP和JavaScrip分别获取关联数组的键值示例代码
2013/09/16 PHP
PHP多种序列化/反序列化的方法详解
2017/06/23 PHP
PHP有序表查找之插值查找算法示例
2018/02/10 PHP
JavaScript高级程序设计(第3版)学习笔记 概述
2012/10/11 Javascript
分享一道笔试题[有n个直线最多可以把一个平面分成多少个部分]
2012/10/12 Javascript
JS正则表达式大全(整理详细且实用)
2013/11/14 Javascript
form表单action提交的js部分与html部分
2014/01/07 Javascript
jquery制作属于自己的select自定义样式
2015/11/23 Javascript
jQuery 全选 全部选 反选 实现代码
2016/08/17 Javascript
利用jQuery实现打字机字幕效果实例代码
2016/09/02 Javascript
关于两个jQuery(js)特效冲突的bug的解决办法
2016/09/04 Javascript
Node.js中的require.resolve方法使用简介
2017/04/23 Javascript
vue中使用cropperjs的方法
2018/03/01 Javascript
vue element upload组件 file-list的动态绑定实现
2019/10/11 Javascript
浅谈JavaScript中等号、双等号、 三等号的区别
2020/08/06 Javascript
jQuery实现tab栏切换效果
2020/12/22 jQuery
python获取糗百图片代码实例
2013/12/18 Python
python实现巡检系统(solaris)示例
2014/04/02 Python
Python多线程实现同步的四种方式
2017/05/02 Python
python中子类调用父类函数的方法示例
2017/08/18 Python
Python编程实现正则删除命令功能
2017/08/30 Python
python实现AES加密与解密
2019/03/28 Python
pytorch 实现打印模型的参数值
2019/12/30 Python
SpringBoot实现登录注册常见问题解决方案
2020/03/04 Python
Python实现在Windows平台修改文件属性
2020/03/05 Python
pyspark 随机森林的实现
2020/04/24 Python
Python实现初始化不同的变量类型为空值
2020/06/02 Python
Sephora丝芙兰菲律宾官方网站:购买化妆品和护肤品
2017/04/05 全球购物
Linux管理员面试经常问道的相关命令
2013/04/29 面试题
幼儿园数学教学反思
2014/02/02 职场文书
竞争与合作演讲稿
2014/05/12 职场文书
2014年司机工作总结
2014/11/21 职场文书
2015年学校办公室工作总结
2015/05/26 职场文书
nginx处理http请求实现过程解析
2021/03/31 Servers
经典《舰娘》游改全新动画预告 预定11月开播
2022/04/01 日漫