浅析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 相关文章推荐
Python输出PowerPoint(ppt)文件中全部文字信息的方法
Apr 28 Python
在Python中操作文件之read()方法的使用教程
May 24 Python
使用rst2pdf实现将sphinx生成PDF
Jun 07 Python
Python统计纯文本文件中英文单词出现个数的方法总结【测试可用】
Jul 25 Python
python 循环读取txt文档 并转换成csv的方法
Oct 26 Python
Form表单及django的form表单的补充
Jul 25 Python
NumPy中的维度Axis详解
Nov 26 Python
浅谈python的elementtree模块处理中文注意事项
Mar 06 Python
Python应用实现处理excel数据过程解析
Jun 19 Python
如何使用Django Admin管理后台导入CSV
Nov 06 Python
python help函数实例用法
Dec 06 Python
使用pytorch实现线性回归
Apr 11 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中通过虚代理实现延迟加载的实现代码
2011/06/10 PHP
PHPExcel读取EXCEL中的图片并保存到本地的方法
2015/02/14 PHP
yii2中的rules 自定义验证规则详解
2016/04/19 PHP
详解PHP中的外观模式facade pattern
2018/02/05 PHP
详解php命令注入攻击
2019/04/06 PHP
12款经典的白富美型—jquery图片轮播插件—前端开发必备
2013/01/08 Javascript
javascript拖拽上传类库DropzoneJS使用方法
2013/12/05 Javascript
jquery增加和删除元素的方法
2015/01/14 Javascript
JavaScript 学习笔记之变量及其作用域
2015/01/14 Javascript
jQuery判断元素是否显示 是否隐藏的简单实现代码
2016/05/19 Javascript
再谈Javascript中的异步以及如何异步
2016/08/19 Javascript
JS中with的替代方法与String中的正则方法详解
2016/12/23 Javascript
es6学习笔记之Async函数基本教程
2017/05/11 Javascript
vue拦截器实现统一token,并兼容IE9验证功能
2018/04/26 Javascript
webpack打包nodejs项目的方法
2018/09/26 NodeJs
javascript 构建模块化开发过程解析
2019/09/11 Javascript
JS 获取文件后缀,判断文件类型(比如是否为图片格式)
2020/05/09 Javascript
使用JavaScript通过前端发送电子邮件
2020/05/22 Javascript
vue 解决uglifyjs-webpack-plugin打包出现报错的问题
2020/08/04 Javascript
Python进度条实时显示处理进度的示例代码
2018/01/30 Python
PyQt5基本控件使用之消息弹出、用户输入、文件对话框的使用方法
2019/08/06 Python
Python+Django+MySQL实现基于Web版的增删改查的示例代码
2020/05/13 Python
python cookie反爬处理的实现
2020/11/01 Python
python 简单的调用有道翻译
2020/11/25 Python
Vertbaudet西班牙网上商店:婴儿服装、童装、母婴用品和儿童家具
2019/10/16 全球购物
工业设计专业推荐信
2013/10/29 职场文书
员工考核管理制度
2014/02/02 职场文书
志愿者服务感言
2014/02/27 职场文书
食品安全演讲稿
2014/09/01 职场文书
2015元旦晚会主持人开场白+结束语
2014/12/14 职场文书
世界卫生日宣传活动总结
2015/02/09 职场文书
教师节寄语2015
2015/03/23 职场文书
化妆品促销活动总结
2015/05/07 职场文书
家庭教育培训学习心得体会
2016/01/14 职场文书
Python编程中内置的NotImplemented类型的用法
2022/03/23 Python
4种方法python批量修改替换列表中元素
2022/04/07 Python