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中使用pyhook实现键盘监控的例子
Jul 18 Python
Python切片操作去除字符串首尾的空格
Apr 22 Python
Django使用中间键实现csrf认证详解
Jul 22 Python
Windows平台Python编程必会模块之pywin32介绍
Oct 01 Python
pytorch实现从本地加载 .pth 格式模型
Feb 14 Python
Python cookie的保存与读取、SSL讲解
Feb 17 Python
使用python实现飞机大战游戏
Mar 23 Python
解决jupyter运行pyqt代码内核重启的问题
Apr 16 Python
打印tensorflow恢复模型中所有变量与操作节点方式
May 26 Python
浅谈opencv自动光学检测、目标分割和检测(连通区域和findContours)
Jun 04 Python
PyTorch 中的傅里叶卷积实现示例
Dec 11 Python
Python实现Excel自动分组合并单元格
Feb 22 Python
python opencv通过按键采集图片源码
python 如何执行控制台命令与操作剪切板
教你怎么用Python生成九宫格照片
用 Python 元类的特性实现 ORM 框架
May 19 #Python
浅谈Python 中的复数问题
May 19 #Python
Python机器学习之基础概述
Python机器学习之PCA降维算法详解
You might like
1.PHP简介
2006/10/09 PHP
修改Zend引擎实现PHP源码加密的原理及实践
2008/04/14 PHP
php加密解密实用类分享
2014/01/07 PHP
ThinkPHP模版中导入CSS和JS文件的方法
2014/11/29 PHP
PHP 常用时间函数资料整理
2016/10/22 PHP
php使用gearman进行任务分发操作实例详解
2020/02/26 PHP
js中访问html中iframe的文档对象的代码[IE6,IE7,IE8,FF]
2011/01/08 Javascript
JS图片自动轮换效果实现思路附截图
2014/04/30 Javascript
jquery缓动swing liner控制动画过程不同时刻的速度
2014/05/29 Javascript
通过js获取上传的图片信息(临时保存路径,名称,大小)然后通过ajax传递给后端的方法
2015/10/01 Javascript
设置jQueryUI DatePicker默认语言为中文
2016/06/04 Javascript
TypeScript学习之强制类型的转换
2016/12/27 Javascript
jQuery Ajax实现Select多级关联动态绑定数据的实例代码
2018/10/26 jQuery
vue微信分享出来的链接点开是首页问题的解决方法
2018/11/28 Javascript
详解Webpack如何引入CDN链接来优化编译后的体积
2019/06/21 Javascript
layui table数据修改的回显方法
2019/09/04 Javascript
VUE.CLI4.0配置多页面入口的实现
2019/11/25 Javascript
原生JS实现顶部导航栏显示按钮+搜索框功能
2019/12/25 Javascript
微信小程序 获取手机号 JavaScript解密示例代码详解
2020/05/14 Javascript
vue+element实现图片上传及裁剪功能
2020/06/29 Javascript
js 数据类型判断的方法
2020/12/03 Javascript
python中实现迭代器(iterator)的方法示例
2017/01/19 Python
Python + selenium自动化环境搭建的完整步骤
2018/05/19 Python
python  Django中的apps.py的目的是什么
2018/10/15 Python
基于Python的Jenkins的二次开发操作
2020/05/12 Python
CSS3 Columns分列式布局方法简介
2014/05/03 HTML / CSS
玖熙女鞋美国官网:Nine West
2016/10/06 全球购物
Nicole Miller官方网站:纽约女装品牌
2019/09/14 全球购物
雷蛇美国官网:Razer
2020/04/03 全球购物
高中的职业生涯规划书
2013/12/28 职场文书
优秀班主任经验交流材料
2014/06/02 职场文书
医学检验专业自荐信
2014/09/18 职场文书
2014年人民警察入党思想汇报
2014/10/12 职场文书
2015年环境整治工作总结
2015/05/22 职场文书
格列夫游记读书笔记
2015/07/01 职场文书
致短跑运动员加油稿
2015/07/21 职场文书