Python模块——glob模块详解

article/2025/10/27 23:18:56

本文大纲

glob模块也是Python标准库中一个重要的模块,主要用来查找符合特定规则的目录和文件,并将搜索的到的结果返回到一个列表中。使用这个模块最主要的原因就是,该模块支持几个特殊的正则通配符,用起来贼方便,这个将会在下方为大家进行详细讲解。
在这里插入图片描述

支持4个常用的通配符

使用glob模块能够快速查找我们想要的目录和文件,就是由于它支持***?[ ]这三个通配符,那么它们到底是 什么意思呢?

  • *:匹配0个或多个字符;
  • **:匹配所有文件、目录、子目录和子目录里的文件(3.5版本新增);
  • ?:代匹配一个字符;
  • []:匹配指定范围内的字符,如[0-9]匹配数字,[a-z]匹配小写字母;
  • 注意:这3个通配符的用法,将在讲函数的时候,一起带大家操作一遍;

glob库中主要的3个函数

其实glob库很简单,只有3个主要函数供我们使用,它们分别是glob()iglob()escape()函数,因此学习起来特别容易。

  • glob.glob():返回符合匹配条件的所有文件的路径;
  • glob.iglob():返回一个迭代器对象,需要循环遍历获取每个元素,得到的也是符合匹配条件的所有文件的路径;
  • glob.escape():escape可以忽略所有的特殊字符,就是星号、问号、中括号,用处不大;
  • recursive=False:代表递归调用,与特殊通配符“**”一同使用,默认为False,False表示不递归调用,True表示递归调用;

1)glob()函数

path1 = r"C:\Users\黄伟\Desktop\publish\os模块\test_shutil_a\[0-9].png"
glob.glob(path1)path2 = r"C:\Users\黄伟\Desktop\publish\os模块\test_shutil_a\[0-9a-z].*"
glob.glob(path2)

结果如下:
在这里插入图片描述

2)iglob()函数

path1 = r"C:\Users\黄伟\Desktop\publish\os模块\test_shutil_a\[0-9].png"
a = glob.iglob(path1)
for i in a:print(i)

结果如下:
在这里插入图片描述

3)escape()函数

通过下方两行代码的对比,可以看出escape()函数只是让*只表示它本来的意思,而不再具有通配符的作用。

glob.glob('t*')
glob.escape('t*')

结果如下:
在这里插入图片描述

总结

通过上面的叙述可以知道,glob库其实并没有很多东西,就记住3个通配符3个函数即可。对于我们来说,glob库就是方便我们查找文件而诞生的,因此我们好好掌握glob()这一个函数,其实就够了,其它的知道、会用就行。

我们还需要注意一点,os库shutil库glob库是互补的,我们要善于发挥各自的优势,充分利用它们的优势,帮助我们快速的操作文件和文件夹。


http://chatgpt.dhexx.cn/article/yDikrIHj.shtml

相关文章

python—glob模块函数(搜索目录文件)

目录 glob函数 iglob函数 glob模块函数用于从目录通配符搜索中生成文件列表,可以快速获取一定格式的文件夹或文件路径的列表。glob匹配模式较少,一共有三种通配符:*、?、[],属于轻量级。路径分隔符(Unix的/,Windows…

pathlib.Path模块下的glob、rglob,glob模块下的glob、iglob

1、导入所需模块 from pathlib2 import Path import glob2 as gb 2、当前所在路径 # D:\02周报 p Path.cwd()3、比较Path模块中的glob(*)、glob(**)、rglob(*)、rglob(**) # from pathlib2 import Path# D:\02周报 # p Path.cwd()type(p.glob(r"*")) print("P…

python中的glob.glob()(包含详细实例)

在网上搜了半天没搜到满意的解释,最终选择去原英文文档里寻找其释义,具体如下: glob.glob(pathname, *, root_dirNone, dir_fdNone, recursiveFalse) 其功能是返回一个与pathname匹配的路径名列表(该列表可以为空,必…

python 的标准库模块glob使用教程,主要为glob.glob()使用与glob.iglob()使用

欢迎大家关注笔者,你的关注是我持续更博的最大动力 原创文章,转载告知,盗版必究 python 的标准库模块glob使用教程,主要为glob.glob函数使用与glob.iglob函数使用 文章目录: 1 glob模块介绍2 glob模块的具体使用2.1 查…

glob.glob()

glob.glob()函数 glob.glob()含有的内容非常少,其功能是查找符合特定规则的文件路径。例如(F:/Python/Hello)。 功能类似于Windows的文件搜索。 查找文件只用到三个匹配符:" “,”?", “[]”。 " "&#x…

glob函数

查找符合自己要求的文件 glob.glob() 返回一个列表,列表里的元素是符合要求的文件名(字符串) 三个匹配符: ”*”匹配任意0个或多个字符 ”?”匹配任意单个字符 ”[ ]”匹配指定范围内的字符 例子1: glob.glob(&q…

python 中的 glob.glob()

1. glob方法: glob模块的主要方法就是glob,该方法返回所有匹配的文件路径列表(list); 该方法需要一个参数用来指定匹配的路径字符串(字符串可以为绝对路径也可以为相对路径),其返回的文件名只…

python glob函数_Python glob()函数

Python glob()函数,是种文件通配符,非常常用。glob模块提供了函数用于从目录通配符搜索中生成文件列表: Python glob()函数用法 glob()函数可以查找符合自己要求的文件, 支持通配符操作*,**,?,[]这四个通配符, *代表0个或多个字符…

python glob.glob使用

使用了下thrift,出现了一些路径问题。原来是glob.glob函数捣的鬼。所以扒了下英文文档,有些收获。下面分享。 函数功能:匹配所有的符合条件的文件,并将其以list的形式返回。 一.glob.glob的介绍和一些实现细节 1.glob.glob函数的…

glob.glob() 函数

glob模块是最简单的模块之一,内容非常少。用它可以查找符合特定规则的文件路径名。跟使用windows下的文件搜索差不多。查找文件只用到三个匹配符:””, “?”, “[]”。””匹配0个或多个字符;”?”匹配单个字符;”[]”匹配指定…

python glob.glob()

glob是python的一个标准库函数,它的作用类似于shell的find,但是只能返回一级目录的查找结果,支持通配符来查找某个目录的文件,找到的文件列表以list格式返回,如果目录不存在或者找到结果为空,则返回一个空列…

glob.glob()函数

glob.glob()函数 glob.glob(pathname, *, recursiveFalse) 功能:返回一个某一种文件夹下面的某一类型文件路径列表 pathname:文件路径 例如: 返回某一文件下面的pdf文件 import glob f glob.glob(H:\\paper_of_remote_sensing\\paper_of_lidar\\*.…

Linux杂谈之Glob文件名模式匹配

一 Glob ① 初识 glob 最早是出现在类Unix系统的命令行中,是用来匹配文件路径的1)在最新的 CentOS 7 中已经删除了 glob 的相关描述文档2)删除的原因由于 glob 已经整合到了 shell 之中,然后就有了 shell 通配符常见: 涉及glob的相关命令…

Python 中glob.glob()、glob.iglob()的使用

Python 中glob.glob()的使用 glob.glob(path)的功能: 返回符合path格式的所有文件的路径,以list存储返回。 glob.iglob(path)的功能: 返回符合path格式的一个文件的路径。 path的表示方法: 利用匹配符:"* "…

SSM项目小例子,SSM整合图文详细教程

SSM项目小例子 今天来搭建一个SSM项目的小例子简单练一练,那项目模板还是我们那个模板,就是我们在JavaWeb最后的小例子,那到SSM中我们如何实现,后面我们再看看springboot中如何实现 javaweb中项目例子:https://blog.cs…

SSM整合之登录注册

一、概述 本文以一个登录注册的小功能作为示例,对SSM框架做一个整合。 二、SSM整合 SSM框架是指Spring、SpringMVC和Mybatis,SpringMVC是包含在Spring中的,因此SSM框架整合核心是将Mybatis整合到Spring中。 2.1 DAO 1. 创建如下的数据库表格…

遇见狂神说SSM整合项目梳理详解

在跟B站的狂神学习的时候有一模块是SSM整合的一个小项目,虽然spring、springmvc、mybatis我都学过,但是整合到一起还是思路不清晰,就很懵,整合的一个小项目,让我知道了什么叫配置地狱,就是熟悉又陌生的感觉…

SSM整合Quartz

Quartz 1.整合1.1 mysql中创建quartz表1.2 添加quartz依赖1.3 添加quartz.properties与数据库关联1.4 编写quartzConfig文件1.4.1 quartz的初始化配置1.4.2 创建job 实例工厂 1.5 编写定时任务1.5.1 静态方式编写定时任务1.5.2 动态方式编写定时任务 2.quartz2.1 quartz概念2.2…

SSM 整合

目录 第六章 SSM 整合导图第一节 Spring 和 Mybatis 整合1、思路2、Mybatis-Spring技术3、总体 SSM 整合所需依赖4、配置数据源①创建 jdbc.properties②加入日志配置文件③创建 Spring 配置文件④创建 junit 测试类 5、配置 SqlSessionFactoryBean①创建 Mybatis 全局配置文件…

SSM整合Vue

昨日知识点总结 今日总结 文章目录 一.昨日知识 1.表单验证2.上传组件3.时间插件4.ElementUI简介 二.今日总结 1.页面静态化 通过html页面,制作展示所有制作添加页面 制作修改页面以及批量删除制作分页制作多条件查询 一、昨日重点复习 1.表单验证 在vue中使用rule…