Python怎么实现递归遍历文件夹搜索文件
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,本篇内容主要讲解"Python怎么实现递归遍历文件夹搜索文件",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Python怎么实现递归遍历文件夹搜索文件"吧!
千家信息网最后更新 2026年11月02日Python怎么实现递归遍历文件夹搜索文件
本篇内容主要讲解"Python怎么实现递归遍历文件夹搜索文件",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Python怎么实现递归遍历文件夹搜索文件"吧!
开发背景:
电脑的E盘里有很多电子书,以前对个技术比较感兴趣就去下载很多电子书,有些看了,有些没看,这些电子书没有在一个地方,于是我准备写一个脚本,将这个电子书书搜索出来,进行整理一下。
程序设计的思路:
定义一个搜索的根目录baseDir,一个不搜索的文件夹列表notSearhFolderArr,一个搜索的文件类型列表searchTypeArr,
判断根目录baseDir是有效的,并且不存在于notSearhFolderArr数组中,
获取文件夹下的所有文件及文件夹,
遍历,判断子元素是文件就,判断文件类型是否存在于searchTypeArr,如果存在返回路径
判断子元素,是文件夹并且不属于notSearhFolderArr数组中, 执行第一步,进行递归搜索
代码:
# 根据配置好的文件,搜索文件夹import osimport ioimport syssys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='utf8')# 主函数baseDir = "E:\\Pang\\for_search" # 搜索的根目录notSearchFolderArr = ['node_modules'] # 不搜索的目录searchFileTypeArr = ['.pdf','.PDF'] # 搜索的文件类型def searhMain(): allResArr = searchFolder(baseDir) print('\n'.join(allResArr))# 搜索一个文件目录 传入一个文件目录路径def searchFolder(folderPath): folderName = os.path.split(folderPath)[-1] searFilePathArr = [] if os.path.exists(folderPath) and (folderName not in notSearchFolderArr): fileArr = os.listdir(folderPath) for item in fileArr: currentPath = folderPath+'\\'+item (fileName,fileType) = os.path.splitext(item) if os.path.isfile(currentPath) and (fileType in searchFileTypeArr): searFilePathArr.append(currentPath) if os.path.isdir(currentPath) and (item not in notSearchFolderArr): innerFileArr = searchFolder(currentPath) searFilePathArr.extend(innerFileArr) return searFilePathArrsearhMain()主要用到的模块和api:
模块 os: 操作文件的模块
主要api:
os.path.split : 分割路径os.path.exists: 路径是否存在os.listdir: 路径是否是文件夹os.path.splitext:拆分路径中的文件扩展名于其他os.path.isfile: 路径是否是文件append: 向数组中追加一个元素extend: 向数组追加一个数组
运行结果:
程序返回的事根目录下所有的pdf文件路径列表
这个脚本稍作修改就可以查询多个文件类型,对文件进行分类,获取要查询的文件路径后,还可以对文件,进行批量备份到一个文件夹下,或者将搜索结果直接打包压缩。现在怎么玩都可以。
到此,相信大家对"Python怎么实现递归遍历文件夹搜索文件"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
文件
搜索
文件夹
路径
数组
递归
根目录
电子
电子书
类型
元素
模块
目录
查询
兴趣
内容
程序
结果
脚本
学习
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
亿人帮互联网科技有限公司
互联网是第几次科技革命的成果
互联网科技金融
善班互联网科技
齐家互联网科技
广西互联网科技公司
兼蜜互联网科技
盛创互联网科技有限公司
互联网 科技馆
隆华科技工业互联网
剑昆互联网络科技有限公司临桂
互联网科技寓意
国大互联网教育科技有限公司工作
智帮互联网科技公司最近动向
江苏苏星互联网科技有限公司
银行科技岗属于互联网吗
黑云互联网科技有限公司
广州互联网高科技取餐柜
互联网科技品牌
现代互联网科技公司
麻工互联网科技
深圳科技互联网
浩特互联网科技
广州互联网络科技有限公司
互联网科技的未来发展
成都狮子座互联网科技
坤平互联网科技
互联网数据科技专业
版纳互联网科技选哪家
上海旺乐尼互联网科技有限公司