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中使用swapCase()方法转换大小写的教程
May 20 Python
win10环境下python3.5安装步骤图文教程
Feb 03 Python
python中模块查找的原理与方法详解
Aug 11 Python
python基础学习之如何对元组各个元素进行命名详解
Jul 12 Python
python 实现UTC时间加减的方法
Dec 31 Python
python 格式化输出百分号的方法
Jan 20 Python
详解django2中关于时间处理策略
Mar 06 Python
详解python读取image
Apr 03 Python
Python定时任务工具之APScheduler使用方式
Jul 24 Python
Python 多线程,threading模块,创建子线程的两种方式示例
Sep 29 Python
基于pytorch 预训练的词向量用法详解
Jan 06 Python
如何在mac下配置python虚拟环境
Jul 06 Python
python opencv通过按键采集图片源码
python 如何执行控制台命令与操作剪切板
教你怎么用Python生成九宫格照片
用 Python 元类的特性实现 ORM 框架
May 19 #Python
浅谈Python 中的复数问题
May 19 #Python
Python机器学习之基础概述
Python机器学习之PCA降维算法详解
You might like
将PHP作为Shell脚本语言使用
2006/10/09 PHP
ajax取消挂起请求的处理方法
2013/03/18 PHP
探讨GDFONTPATH能否被winxp下的php支持
2013/06/21 PHP
PHP计算一年多少个星期和每周的开始和结束日期
2014/07/01 PHP
thinkPHP3.2简单实现文件上传的方法
2016/05/16 PHP
PHP的PDO大对象(LOBs)
2019/01/27 PHP
新鲜出炉的js tips提示效果
2011/04/03 Javascript
jQuery EasyUI API 中文文档 - Tabs标签页/选项卡
2011/10/01 Javascript
jquery淡化版banner异步图片文字效果切换图片特效
2014/04/08 Javascript
页面加载完后自动执行一个方法的js代码
2014/09/06 Javascript
jQuery支持动态参数将函数绑定到事件上的方法
2015/03/17 Javascript
javascript显示倒计时控制按钮的简单实现
2016/06/07 Javascript
深入理解(function(){... })();
2016/08/16 Javascript
浅谈js继承的实现及公有、私有、静态方法的书写
2016/10/28 Javascript
微信小程序实现验证码获取倒计时效果
2018/02/08 Javascript
详解在Vue中使用TypeScript的一些思考(实践)
2018/07/06 Javascript
python版本坑:md5例子(python2与python3中md5区别)
2017/06/20 Python
python实现一个简单的并查集的示例代码
2018/03/19 Python
python pandas 对series和dataframe的重置索引reindex方法
2018/06/07 Python
Python实现Event回调机制的方法
2019/02/13 Python
关于python字符串方法分类详解
2019/08/20 Python
3行Python代码实现图像照片抠图和换底色的方法
2019/10/10 Python
Pycharm-community-2020.2.3 社区版安装教程图文详解
2020/12/08 Python
细说CSS3中box属性中的overflow-x属性和overflow-y属性值的效果
2014/07/21 HTML / CSS
html5+css3气泡组件的实现
2014/11/21 HTML / CSS
aden + anais官方网站:婴儿襁褓、毯子、尿布和服装
2017/06/21 全球购物
中间件分为哪几类
2012/03/14 面试题
SOA面试题:如何在SOA中实现松耦合
2013/07/21 面试题
前台接待员岗位职责
2014/01/02 职场文书
有关打架的检讨书
2014/01/25 职场文书
文艺晚会主持词
2014/03/24 职场文书
预备党员公开承诺书
2014/05/28 职场文书
2015年置业顾问工作总结
2015/04/07 职场文书
幼儿园教师师德承诺书
2015/04/28 职场文书
销售合作意向书范本
2015/05/08 职场文书
使用Django框架创建项目
2022/06/10 Python