【python办公自动化22】文件夹查找器(指定路径下输入关键词获得文件夹的位置及该文件夹下的文件内容)

1. 文件夹准备

测试的材料是创建在桌面上的demo文件夹,里面分别有的内容如下,其中只有照片、张三和张三的小三文件夹下有内容,要查找的文件夹在位置分别在

① demo文件下面的张三文件夹

② 张三的小三下面的张三文件夹
在这里插入图片描述
①中张三文件夹下的内容如下:
在这里插入图片描述
②中张三文件夹下的内容如下:
在这里插入图片描述

2. 预备知识

一共需要四个知识点:

① 遍历指定路径下所有的内容(包括文件和文件夹)

glob.glob(path, recursive = True)

② 获取路径的最后的文件/文件夹名称,判断是否为匹配的路径,如果是查找文件夹就是等于符号,如果要判断的文件,就是in的成员判断符号

os.path.basename(file) == keyword  #判断文件夹
#keyword in os.path.basename(file) 判断文件

③ 输出一个路径下的全部内容(包括文件和文件夹)

os.listdir(file)

④ 文件路径的拼接,为了避免符号的影响,可以使用下面的方法

os.path.join(input('请输入要搜索的路径:'),'**')

3. 全部代码

这里是保留了接口,测试的时候直接赋值path和keyword,在使用的时候可以将这两个语句删除,然后将上面的两个注释打开运行,输入自己的要查找的文件路径和关键词即可

import os
import glob


def get_dir_site(path,keyword):
	files_list = glob.glob(path, recursive = True)
	#print(files_list)
	n = 1
	for file in files_list:
		if os.path.basename(file) == keyword:
			print(f'已找到匹配的第{n}个{keyword}文件夹,文件路径为{file}')
			print(f'该文件夹下的内容有{os.listdir(file)}\n')
			n += 1

if __name__ == '__main__':
	# path = os.path.join(input('请输入要搜索的路径:'),'**')
	# keyword = input('请输入要搜索的关键词:')
	path = 'C:\\Users\\86177\\Desktop\\demo\\**'
	keyword = '张三'
	get_dir_site(path,keyword)

4. 输出结果

文件查找器的逻辑类似,前面已经在预备知识中提及了,有需要的话可以自己调试一下
在这里插入图片描述

原创文章 159 获赞 93 访问量 4万+

猜你喜欢

转载自blog.csdn.net/lys_828/article/details/105626747