使用 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遍历指定文件及文件夹的方法
May 09 Python
详解Python判定IP地址合法性的三种方法
Mar 06 Python
Python实现接受任意个数参数的函数方法
Apr 21 Python
浅析Python数据处理
May 02 Python
pycharm远程开发项目的实现步骤
Jan 20 Python
windows下python虚拟环境virtualenv安装和使用详解
Jul 16 Python
详解python 利用echarts画地图(热力图)(世界地图,省市地图,区县地图)
Aug 06 Python
Python装饰器使用你可能不知道的几种姿势
Oct 25 Python
使用python实现哈希表、字典、集合操作
Dec 22 Python
使用Python开发个京东上抢口罩的小实例(仅作技术研究学习使用)
Mar 10 Python
Python paramiko使用方法代码汇总
Nov 20 Python
python opencv常用图形绘制方法(线段、矩形、圆形、椭圆、文本)
Apr 12 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与Mysql的一些简单的操作
2015/02/26 PHP
PHP  Yii清理缓存的实现方法
2016/11/10 PHP
phpstudy2018升级MySQL5.5为5.7教程(图文)
2018/10/24 PHP
使用composer 安装 laravel框架的方法图文详解
2019/08/02 PHP
如何在Mozilla Gecko 用Javascript加载XSL
2007/01/09 Javascript
基于jQuery实现左右div自适应高度完全相同的代码
2012/08/09 Javascript
JavaScript中获取样式的原生方法小结
2014/10/08 Javascript
如何让你的Lightbox支持滚轮缩放及Base64图片
2014/12/04 Javascript
jQuery选择器源码解读(三):tokenize方法
2015/03/31 Javascript
详解Bootstrap创建表单的三种格式(一)
2016/01/04 Javascript
用jmSlip编写移动端顶部日历选择控件
2016/10/24 Javascript
微信小程序 本地存储及登录页面处理实例详解
2017/01/11 Javascript
Bootstrap Scrollspy源码学习
2017/03/02 Javascript
JS+html5制作简单音乐播放器
2020/09/13 Javascript
vue.js element-ui validate中代码不执行问题解决方法
2017/12/18 Javascript
微信小程序搭建(mpvue+mpvue-weui+fly.js)的详细步骤
2018/09/18 Javascript
实例讲解React 组件
2020/07/07 Javascript
Python3实战之爬虫抓取网易云音乐的热门评论
2017/10/09 Python
python中实现k-means聚类算法详解
2017/11/11 Python
Anaconda入门使用总结
2018/04/05 Python
利用Python在一个文件的头部插入数据的实例
2018/05/02 Python
python随机在一张图像上截取任意大小图片的方法
2019/01/24 Python
python写一个随机点名软件的实例
2019/11/28 Python
Python函数式编程实例详解
2020/01/17 Python
在jupyter notebook 添加 conda 环境的操作详解
2020/04/10 Python
Python Scrapy多页数据爬取实现过程解析
2020/06/12 Python
Python3+Django get/post请求实现教程详解
2021/02/16 Python
Finishline官网:美国一家领先的运动品牌鞋类、服装零售商
2016/07/20 全球购物
高中生期末评语
2014/01/28 职场文书
求职意向书范文
2014/04/01 职场文书
《生命 生命》教学反思
2014/04/19 职场文书
搞笑的获奖感言
2014/08/16 职场文书
学校财务管理制度
2015/08/04 职场文书
Pytorch 如何加速Dataloader提升数据读取速度
2021/05/28 Python
uni-app 微信小程序授权登录的实现步骤
2022/02/18 Javascript
Windows10安装Apache2.4的方法步骤
2022/06/25 Servers