使用 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 OS模块常用函数说明
May 23 Python
Python中functools模块的常用函数解析
Jun 30 Python
python之virtualenv的简单使用方法(必看篇)
Nov 25 Python
python奇偶行分开存储实现代码
Mar 19 Python
Python读取mat文件,并转为csv文件的实例
Jul 04 Python
详解Python连接MySQL数据库的多种方式
Apr 16 Python
python实现图片九宫格分割
Mar 07 Python
django框架用户权限中的session缓存到redis中的方法
Aug 06 Python
Django ORM filter() 的运用详解
May 14 Python
python中元组的用法整理
Jun 15 Python
Python logging模块异步线程写日志实现过程解析
Jun 30 Python
虚拟环境及venv和virtualenv的区别说明
Feb 05 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
用PHP+java实现自动新闻滚动窗口
2006/10/09 PHP
PHP系列学习之日期函数使用介绍
2012/08/18 PHP
php curl的深入解析
2013/06/02 PHP
详解php 使用Callable Closure强制指定回调类型
2017/10/26 PHP
jquery 事件执行检测代码
2009/12/09 Javascript
js对象的构造和继承实现代码
2010/12/05 Javascript
jQuery 操作option的实现代码
2011/03/03 Javascript
JS完成代码前最好对其做5件事
2013/04/07 Javascript
ajax+jQuery实现级联显示地址的方法
2015/05/06 Javascript
ECMAScript6函数剩余参数(Rest Parameters)
2015/06/12 Javascript
AngularJS基础 ng-repeat 指令简单示例
2016/08/03 Javascript
Vue 进阶教程之v-model详解
2017/05/06 Javascript
简单的网页广告特效实例
2017/08/19 Javascript
[js高手之路]原型式继承与寄生式继承详解
2017/08/28 Javascript
Vue利用canvas实现移动端手写板的方法
2018/05/03 Javascript
JS实现图片转换成base64的各种应用场景实例分析
2018/06/22 Javascript
小程序实现列表多个批量倒计时
2021/01/29 Javascript
详解js动态获取浏览器或页面等容器的宽高
2019/03/13 Javascript
跟混乱的页面弹窗说再见
2019/04/11 Javascript
React优化子组件render的使用
2019/05/12 Javascript
JS中比Switch...Case更优雅的多条件判断写法
2019/09/05 Javascript
解决Angularjs异步操作后台请求用$q.all排列先后顺序问题
2019/11/29 Javascript
JavaScript实现简单日历效果
2020/09/11 Javascript
Python3里的super()和__class__使用介绍
2015/04/23 Python
详解python中的json的基本使用方法
2016/12/21 Python
Python实现JSON反序列化类对象的示例
2018/01/31 Python
python判断列表的连续数字范围并分块的方法
2018/11/16 Python
Python xlrd excel文件操作代码实例
2020/03/10 Python
解决jupyter notebook import error但是命令提示符import正常的问题
2020/04/15 Python
Python request post上传文件常见要点
2020/11/20 Python
基于Python 函数和方法的区别说明
2021/03/24 Python
市级优秀班主任事迹材料
2014/05/13 职场文书
信仰心得体会
2014/09/05 职场文书
工作检讨书怎么写
2014/10/10 职场文书
2014年领导班子工作总结
2014/12/11 职场文书
2016年公司中秋节致辞
2015/11/26 职场文书