Python快速查找文件-tmp文件

因为平时用everything很舒服,查找文件是真的很方便,

但是既然用到了Python,就想到可不可以来自己实现一下,

下面的分析是针对一个目录来查找的,当你知道文件大致有什么东西的时候,

比如你要查找 md 结尾的的文件,又大致知道在哪个目录的时候,就可以来自己查找。

下面是我自己临时创建的一个目录 C:\tmp\test

当前的文件结构如下:

Python快速查找文件

文件目录结构

这里用到了 os 模块下的walk函数,它会自动递归遍历一个目录下的所有子目录:

Python快速查找文件

输出:

root: C:\tmp\test
dirs: ['cool', 'how']
files: ['1.log', 'result.txt', 'test.md']
------------------------
root: C:\tmp\test\cool
dirs: ['cool_sub']
files: ['cool.md']
------------------------
root: C:\tmp\test\cool\cool_sub
dirs: []
files: ['sub.md']
------------------------
root: C:\tmp\test\how
dirs: []
files: ['how.md']
------------------------

从上面可以看出,root 是每一个目录,

dirsroot 这个目录下所有的文件夹,

filesroot 这个目录下所有的文件

我们这个时候如果想查找 md 结尾的文件,就可以用下面的方法:

Python快速查找文件

输出:

找出的文件如下:
C:\tmp\test\test.md
C:\tmp\test\cool\cool.md
C:\tmp\test\cool\cool_sub\sub.md
C:\tmp\test\how\how.md

这里我们可以加上找出的文件个数,

len是Python内置的函数,可以获取一个列表的长度:

Python快速查找文件

输出:

列表的长度是: 3

最终的代码如下:

Python快速查找文件

输出:

一共找出 4 个文件
找出的文件如下:
C:\tmp\test\test.md
C:\tmp\test\cool\cool.md
C:\tmp\test\cool\cool_sub\sub.md
C:\tmp\test\how\how.md

推荐阅读