分享

使用Python实现文件的精确查找、模糊查找、范围查找

 网摘文苑 2019-09-07

使用Python进行文件查找的应用场景还是比较多的,比如

  • 获取指定目录下某个具体的文件
  • 获取指定目录下具备指定前缀或者后缀的文件
  • 获取指定目录下指定格式的文件

这里涉及到文件的精确查询、模糊查询、范围查询。


设计一个简单的函数实现上述三种查询场景

我们主要使用了以下两个Python模块。

os 模块

Python 的 os 模块封装了常见的文件和目录操作。其中使用了以下方法:

  • os.walk:遍历目录。
  • os.path.join:连接目录与文件名。
  • os.path.splitext:分离文件名与扩展名。
  • os.path.isdir:判断给出的路径是否是一个目录。

glob 模块

Python 的 glob 模块封装了文件查找匹配操作。其中使用了以下方法:

  • glob.glob:返回所有匹配的文件路径列表。它只有一个参数pathname,定义了文件路径匹配规则,这里可以是绝对路径,也可以是相对路径。

需要注意的是,glob 模块pathname参数在Windows下是不区分大小写的,而在Linux下是区分大小写的。


代码设计如下

使用Python实现文件的精确查找、模糊查找、范围查找


接下来,我们试一下 该函数是否满足上述三个文件查找场景

精确查询

查找D:\learn\config.yml文件:

使用Python实现文件的精确查找、模糊查找、范围查找


模糊查询

查找D:\learn目录下文件名以c开头的yml文件,支持前模糊、后模糊、全模糊。

使用Python实现文件的精确查找、模糊查找、范围查找

查询结果如下:

使用Python实现文件的精确查找、模糊查找、范围查找


范围查询

查找D:\learn目录下文件格式为.jpg的文件。

使用Python实现文件的精确查找、模糊查找、范围查找

查询结果如下:

使用Python实现文件的精确查找、模糊查找、范围查找


使用Python实现文件的精确查找、模糊查找、范围查找

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多