浅析python标准库中的glob


Posted in Python onMarch 13, 2020

 glob 文件名模式匹配,不用遍历整个目录判断每个文件是不是符合。

1、通配符

星号(*)匹配零个或多个字符

import glob
for name in glob.glob('dir/*'):
  print (name)

dir/file.txt
dir/file1.txt
dir/file2.txt
dir/filea.txt
dir/fileb.txt
dir/subdir

列出子目录中的文件,必须在模式中包括子目录名:

import glob

#用子目录查询文件
print ('Named explicitly:')
for name in glob.glob('dir/subdir/*'):
  print ('\t', name)
#用通配符* 代替子目录名
print ('Named with wildcard:')
for name in glob.glob('dir/*/*'):
  print ('\t', name)

Named explicitly:
    dir/subdir/subfile.txt
Named with wildcard:
    dir/subdir/subfile.txt

2、单个字符通配符

用问号(?)匹配任何单个的字符。

import glob

for name in glob.glob('dir/file?.txt'):
  print (name)

dir/file1.txt
dir/file2.txt
dir/filea.txt
dir/fileb.txt

3、字符范围

当需要匹配一个特定的字符,可以使用一个范围

import glob
for name in glob.glob('dir/*[0-9].*'):
  print (name)

dir/file1.txt
dir/file2.txt

知识点补充:Python编程:glob模块进行文件名模式匹配

文件准备

$ mkdir tmp
$ cd tmp
$ touch file1.txt
$ touch file2.txt
$ touch file3.log
$ ls
file1.txt       file2.txt       file3.log

测试

import glob

# 使用零个或多个字符通配符 * 
glob.glob("tmp/*.txt")
Out[1]: 
['file1.txt', 'file2.txt']

# 使用单字符通配符 ?
glob.glob("tmp/file?.txt")
Out[2]: 
['file1.txt', 'file2.txt']

# 使用范围匹配
glob.glob("tmp/file[0-9].txt")
Out[3]: 
['file1.txt', 'file2.txt']

总结

到此这篇关于浅析python标准库中的glob的文章就介绍到这了,更多相关python标准库 glob内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
用PyQt进行Python图形界面的程序的开发的入门指引
Apr 14 Python
python读写二进制文件的方法
May 09 Python
itchat和matplotlib的结合使用爬取微信信息的实例
Aug 25 Python
Tensorflow 自带可视化Tensorboard使用方法(附项目代码)
Feb 10 Python
Python常用爬虫代码总结方便查询
Feb 25 Python
Python生成一个迭代器的实操方法
Jun 18 Python
在Python中os.fork()产生子进程的例子
Aug 08 Python
python通过安装itchat包实现微信自动回复收到的春节祝福
Jan 19 Python
Python 在函数上添加包装器
Jul 28 Python
Python unittest装饰器实现原理及代码
Sep 08 Python
matplotlib阶梯图的实现(step())
Mar 02 Python
python编程学习使用管道Pipe编写优化代码
Nov 20 Python
Python3标准库glob文件名模式匹配的问题
Mar 13 #Python
python编写俄罗斯方块
Mar 13 #Python
探秘TensorFlow 和 NumPy 的 Broadcasting 机制
Mar 13 #Python
自定义Django Form中choicefield下拉菜单选取数据库内容实例
Mar 13 #Python
django处理select下拉表单实例(从model到前端到post到form)
Mar 13 #Python
python实现俄罗斯方块游戏(改进版)
Mar 13 #Python
Python之Django自动实现html代码(下拉框,数据选择)
Mar 13 #Python
You might like
PHP error_log()将错误信息写入一个文件(定义和用法)
2013/10/25 PHP
php数组添加与删除单元的常用函数实例分析
2015/02/16 PHP
PHP实现文字写入图片功能
2019/02/18 PHP
表单内同名元素的控制
2006/11/22 Javascript
jQuery ajax BUG:object doesn't support this property or method
2010/07/06 Javascript
入门基础学习 ExtJS笔记(一)
2010/11/11 Javascript
实测jquery data()如何存值
2013/08/18 Javascript
一款由jquery实现的整屏切换特效
2014/09/15 Javascript
node.js解决获取图片真实文件类型的问题
2014/12/20 Javascript
javascript实现多级联动下拉菜单的方法
2015/02/06 Javascript
浅谈jquery中的each方法$.each、this.each、$.fn.each
2016/06/23 Javascript
JCrop+ajaxUpload 图像切割上传的实例代码
2016/07/20 Javascript
微信小程序 数组(增,删,改,查)等操作实例详解
2017/01/05 Javascript
@angular前端项目代码优化之构建Api Tree的方法
2018/12/24 Javascript
js实现鼠标点击页面弹出自定义文字效果
2019/12/24 Javascript
vue项目启动出现cannot GET /服务错误的解决方法
2020/04/26 Javascript
JS代码简洁方式之函数方法详解
2020/07/28 Javascript
python复制与引用用法分析
2015/04/08 Python
改进Django中的表单的简单方法
2015/07/17 Python
Python3.4编程实现简单抓取爬虫功能示例
2017/09/14 Python
如何利用Python模拟GitHub登录详解
2019/07/15 Python
python 串口读取+存储+输出处理实例
2019/12/26 Python
Python学习之os模块及用法
2020/06/03 Python
python 基于UDP协议套接字通信的实现
2021/01/22 Python
HTML5 placeholder(空白提示)属性介绍
2013/08/07 HTML / CSS
HTML利用九宫格原理进行网页布局
2020/03/13 HTML / CSS
ASICS印度官方网站:日本专业运动品牌
2020/06/20 全球购物
如何高效率的查找一个月以内的数据
2012/04/15 面试题
医院工作检讨书范文
2014/02/10 职场文书
合作意向协议书范本
2014/03/31 职场文书
2014年路政工作总结
2014/12/10 职场文书
法务专员岗位职责
2015/02/14 职场文书
2015年三好一满意工作总结
2015/07/24 职场文书
早恋主题班会
2015/08/14 职场文书
在HTML中引入CSS的几种方式介绍
2021/12/06 HTML / CSS
Ubuntu Server 安装Tomcat并配置systemctl
2022/04/28 Servers