python使用glob检索文件的操作


Posted in Python onMay 20, 2021

一、检索当前目录下所有文件、文件夹

from glob import glob
glob('./*')
Output: ['./0a.wav', './aaa', './1b.wav', './1a.wav', './0b.wav'] #返回一个list

二、检索当前目录下指定后缀名文件

假设我们需要获取当前文件夹下所有后缀名为".wav"的文件,

from glob import glob
glob('./*.wav')
Output: ['./0a.wav', './1b.wav', './1a.wav', './0b.wav'] #返回一个包含".wav"文件路径的list

二、检索当前目录下包含指定字符文件

假设我们需要获得所有包含"a"字符的".wav"文件,

from glob import glob
glob('./*a*.wav')
Output: ['./0a.wav', './1a.wav'] #返回一个包含".wav"文件路径的list

补充:Python 中的glob模块使用笔记(用它来遍历文件夹、文件真的很方便)

glob模块简介

glob是python自己带的一个文件操作相关模块,用它可以查找符合自己目的的文件,就类似于Windows下的文件搜索,支持通配符操作。

glob中支持的通配符有三种:

‘*' 匹配0个或多个字符
‘?' 仅匹配一个字符
‘[]' 匹配指定范围内的字符,如[0-9]匹配数字

用图片中的文件夹作为例子进行演示

python使用glob检索文件的操作

一、glob.glob的使用:

该方法返回所有匹配的文件路径列表。

该方法需要一个参数用来指定要匹配的文件路径(字符串类型)绝对路径、相对路径。

1.匹配某指定路径下后缀为.exe的文件(绝对路径)

In:
from glob import glob

file = glob(r'D:\masm\*.EXE')
print(type(file))
print(file)

Out:
<class 'list'>
['D:\\masm\\CREF.EXE', 'D:\\masm\\debug.exe',
 'D:\\masm\\DEBUG32.EXE', 'D:\\masm\\ERROUT.EXE',
  'D:\\masm\\EXEMOD.EXE', 'D:\\masm\\EXEPACK.EXE',
   'D:\\masm\\LIB.EXE', 'D:\\masm\\LINK.EXE',
    'D:\\masm\\MASM.EXE', 'D:\\masm\\SETENV.EXE',
     'D:\\masm\\TEST2.EXE', 'D:\\masm\\TEST3.EXE',
      'D:\\masm\\TEST4.EXE', 'D:\\masm\\TEST5.EXE',
       'D:\\masm\\TEST6.EXE']

2.匹配某指定路径下的所有文件(绝对路径)

In:
from glob import glob

file = glob(r'D:\masm\*\*')
print(type(file))
print(file)

Out:
<class 'list'>
['D:\\masm\\work\\hello.asm', 'D:\\masm\\work\\HELLO.OBJ',
 'D:\\masm\\work\\test1.asm', 'D:\\masm\\work\\TEST1.OBJ',
  'D:\\masm\\work\\test2.asm', 'D:\\masm\\work\\TEST2.OBJ', 
  'D:\\masm\\work\\test3.asm', 'D:\\masm\\work\\TEST3.OBJ',
   'D:\\masm\\work\\test4.asm', 'D:\\masm\\work\\TEST4.OBJ', 
   'D:\\masm\\work\\two']

3.使用相对路径来进行匹配

'.' 指代当前目录

'. . ' 指代当前目录的上一级目录

In:
from glob import glob

file = glob(r'..\*')
print(type(file))
print(file)

Out:
<class 'list'>
['..\\12306', '..\\Auto connection school network', '..\\cache', 
'..\\class', '..\\exercise_1.py', '..\\exercise_2-2.py', 
'..\\exercise_2-3.py', '..\\exercise_2.py', '..\\regular',
 '..\\taobao', '..\\test.py', '..\\testglob', '..\\UDPClient']

python使用glob检索文件的操作

二、glob.iglob的使用

获取一个生成器( generator)对象,使用它可以逐个获取匹配的文件路径名。与glob.glob()的区别是:glob.glob同时获取所有的匹配路径,而 glob.iglob一次只获取一个匹配路径。

In:
from glob import iglob

file = iglob(r'..\*.py')
print(type(file))
print(file)

n=0
for i in file:
    n=n+1
    print(str(n),i)
Out:
<class 'generator'>
<generator object _iglob at 0x000001AEBE4D3B10>
1 ..\exercise_1.py
2 ..\exercise_2-2.py
3 ..\exercise_2-3.py
4 ..\exercise_2.py
5 ..\test.py

通过示例中的for循环可以看到,生成器对象会依次给出要匹配路径下的文件。

Python 相关文章推荐
python文件比较示例分享
Jan 10 Python
python解析发往本机的数据包示例 (解析数据包)
Jan 16 Python
python中self原理实例分析
Apr 30 Python
python开发之thread实现布朗运动的方法
Nov 11 Python
剖析Python的Twisted框架的核心特性
May 25 Python
python对DICOM图像的读取方法详解
Jul 17 Python
python如何使用unittest测试接口
Apr 04 Python
python实时监控cpu小工具
Jun 21 Python
pygame游戏之旅 添加icon和bgm音效的方法
Nov 21 Python
python 视频逐帧保存为图片的完整实例
Dec 10 Python
用python解压分析jar包实例
Jan 16 Python
Python如何执行系统命令
Sep 23 Python
python opencv通过按键采集图片源码
python 如何执行控制台命令与操作剪切板
教你怎么用Python生成九宫格照片
用 Python 元类的特性实现 ORM 框架
May 19 #Python
浅谈Python 中的复数问题
May 19 #Python
Python机器学习之基础概述
Python机器学习之PCA降维算法详解
You might like
杏林同学录(二)
2006/10/09 PHP
php中解析带中文字符的url函数分享
2015/01/20 PHP
laravel实现分页样式替换示例代码(增加首、尾页)
2017/09/22 PHP
php设计模式之组合模式实例详解【星际争霸游戏案例】
2020/03/27 PHP
PHP copy函数使用案例代码解析
2020/09/01 PHP
jquery仿QQ商城带左右按钮控制焦点图片切换滚动效果
2013/06/27 Javascript
jquery与js函数冲突的两种解决方法
2013/09/09 Javascript
Javascript学习笔记之 函数篇(一) : 函数声明和函数表达式
2014/06/24 Javascript
解释&amp;&amp;和||在javascript中的另类用法
2014/07/28 Javascript
鼠标悬浮停留三秒后自动显示大图js代码
2014/09/09 Javascript
jQuery+jsp下拉框联动获取本地数据的方法(附源码)
2015/12/03 Javascript
基于BootStrap环境写jQuery tabs插件
2016/07/12 Javascript
使用BootStrap进行轮播图的制作
2017/01/06 Javascript
angular仿支付宝密码框输入效果
2017/03/25 Javascript
vue element-ui 绑定@keyup事件无效的解决方法
2018/03/09 Javascript
JS 实现获取验证码 倒计时功能
2018/10/29 Javascript
详解用场景去理解函数柯里化(入门篇)
2019/04/11 Javascript
[53:44]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Magma BO3 第一场 1月31日
2021/03/11 DOTA
Python  连接字符串(join %)
2008/09/06 Python
python实现数独游戏 java简单实现数独游戏
2018/03/30 Python
Python图像处理之图像的缩放、旋转与翻转实现方法示例
2019/01/04 Python
python实现windows壁纸定期更换功能
2019/01/21 Python
python实现简单日期工具类
2019/04/24 Python
Python计算一个点到所有点的欧式距离实现方法
2019/07/04 Python
YUV转为jpg图像的实现
2019/12/09 Python
python如何对链表操作
2020/10/10 Python
美国羊皮公司:Overland
2018/01/15 全球购物
澳大利亚家庭花园和DIY工具网店:VidaXL
2019/05/03 全球购物
马德里运动鞋商店:Nigra Mercato
2020/02/16 全球购物
书法比赛获奖感言
2014/02/10 职场文书
车间核算员岗位职责
2014/07/01 职场文书
园林专业毕业生自荐信
2014/07/04 职场文书
普通党员四风问题对照检查材料
2014/09/27 职场文书
2014年党小组工作总结
2014/12/20 职场文书
搞笑婚庆主持词
2015/06/29 职场文书
初中生入团申请书范文(五篇)
2019/10/16 职场文书