Python模块glob函数示例详解教程
作者:数据分析与统计学之美 发布时间:2023-10-27 15:49:36
本文大纲
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*')
结果如下:
来源:https://huang-tong-xue.blog.csdn.net/article/details/108069945
猜你喜欢
- 系统环境centos7python2.7先在操作系统安装expect[root@V71 python]# vi 3s.py#!/usr/bi
- 首先来分析下需求,web程序后台需要认证,后台页面包含多个页面,最普通的方法就是为每个url添加认证,但是这样就需要每个每个绑定url的后台
- 安装python中文分词库jieba法1:Anaconda Prompt下输入conda install jieba法2:Terminal下
- IronPython是一种在 .NET及 Mono上的 Python实现,由微软的 Jim Hugunin所发起,是一个开源的项目,基于微软
- 经过一轮的项目封闭开发,页面制作的动手能力提高了不少,用AW的话说就是被复杂的东西虐过以后很多问题都变得容易了,的确很有道理。我个人觉得技术
- 为了提高Asp程序的性能,人们常常将经常使用的数据缓存在 Application,但是你修改了数据库后怎么让application更新呢,本
- 现在Ajax是一个相当火的东西,那么Ajax是什么呢?我的理解Ajax就是一个工具,就是一个客户端的技术,不管用何种服务器端技术都可以用Aj
- 1、给定的日期格式相同,则使用简单的比较运算符来比较日期。<?php//声明两个日期、初始化$date1 = "2021-1
- 情景一:不需要原有的数据库数据删除数据库所有的表删除项目的migration模块中的所有 文件,除了__init__.py 文件执行脚本py
- 有时需要根据项目的实际需求向spider传递参数以控制spider的行为,比如说,根据用户提交的url来控制spider爬取的网站。在这种情
- Varchar 对每个英文(ASCII)字符都占用2个字节,对一个汉字也只占用两个字节char 对英文(ASCII)字符占用1个字节,对一个
- 一. 介绍fire是python中用于生成命令行界面(Command Line Interfaces, CLIs)的工具,不需要做任何额外的
- 作者:Roland Smart原文链接:http://www.adaptivepath.com/ideas/newsletter/archi
- MySQL的ODBC接口实现是通过安装MyODBC驱动,这个驱动程序是跨平台的。如果在Linux等Unix体系操作系统下使用,需要先安装Io
- 说明1、模型集成是指将一系列不同模型的预测结果集成在一起,从而获得更好的预测结果。2、对于模型集成来说,模型的多样性非常重要。Diversi
- 一、概述网络爬虫(Web crawler),又称为网络蜘蛛(Web spider)或网络机器人(Web robot),主要用来爬取目标网站内
- 我们这里试输出一段字符:<%response.write Server.UrlEncode("织梦幻影")%>
- 前言在上一篇文中,我们介绍了关于Python正则表达式的基础,那么在这一篇文章里,我们将总结一下正则表达式关于捕获的用法。下面话不多说,来看
- 我们知道,数组的sort方法可以对数组元素进行排序,默认是按ASCII字母表顺序排序。如果要根据其他的顺序排序就需要为sort方法提供一个比
- 分析古诗文网站下图1展示了古诗文网站—》诗文 栏目的首页数据。该栏目的地址是:https://so.gushiwen.cn/shiwens/