时间:2021-05-23
glob模块实例详解
glob的应用场景是要寻找一系列(符合特定规则)文件名。
glob模块是最简单的模块之一,内容非常少。用它可以查找符合特定规则的文件路径名。查找文件只用到三个匹配符:”*”, “?”, “[]”。
”*”匹配0个或多个字符;
”?”匹配单个字符;
”[ ]”匹配指定范围内的字符,如:[0-9]匹配数字。
假设以下例子目录是这样的。
dirdir/file.txtdir/file1.txtdir/file2.txtdir/filea.txtdir/fileb.txtdir/subdirdir/subdir/subfile.txt匹配所有文件
可以用*匹配任意长度字节。glob.glob比较常用,返回一个list,也可用glob.iglob返回生成器。
import globfor name in glob.glob('dir/*'): print namedir/file.txtdir/file1.txtdir/file2.txtdir/filea.txtdir/fileb.txtdir/subdir匹配子目录文件
可以指定子目录名称,也可以用通配符代替,不显示指定。
print 'Named explicitly:'for name in glob.glob('dir/subdir*'): print '\t', nameNamed explicitly: dir/subdir/subfile.txtNamed with wildcard: dir/subdir/subfile.txt单字节通配符匹配
除了*以外,还有?匹配单个字符。比如下面这个例子,匹配以file开头,以.txt结尾,中间是任一字符的文件。
for name in glob.glob('dir/file?.txt'):
print name
dir/file1.txtdir/file2.txtdir/filea.txtdir/fileb.txt字符区间匹配[0-9]
比如匹配后缀前是数字的文件。
for name in glob.glob('dir/*[0-9].*'):
print name
dir/file1.txt
dir/file2.txt
Ref:
官方文档
Python Module of the Week
补充知识:Python glob 递归遍历匹配文件;os.makedirs()递归创建目录
Glob递归遍历匹配文件
简约版
在python中,glob模块用来查找匹配文件
常用的匹配规则:
: 匹配所所有
? : 匹配一个字符
如果没有匹配的,glob.glob(path)将返回一个空的list:[]
from glob import globfile_path = "/home/lihuiyu/Code/results_S2_W20040/**.pth"file_list = glob(file_path)file_list.sort(key=natural_keys)for name in file_list: print(name)os.makedirs()递归创建目录
os.mkdir()创建指定的目录,但如果其上一级目录不存在,则无法创建成功。
os.makedirs()实现递归创建目录的功能。
以上这篇Python: glob匹配文件的操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
glob文件名模式匹配,不用遍历整个目录判断每个文件是不是符合。1、通配符星号(*)匹配零个或多个字符importglobfornameinglob.glob(
1.glob文件名模式匹配尽管globAPI很小,但这个模块的功能却很强大。只要程序需要查找文件系统中名字与某个模式匹配的一组文件,就可以使用这个模块。要创建一
前言:处理图片需要,需把图片都转换成1920*1280的大小,python实现很方便,需要导入图片处理的Image包和匹配的glob包,很简单,代码如下:img
PYTHONPandas批量读取csv文件到DATAFRAME首先使用glob.glob获得文件路径。然后定义一个列表,读取文件后再使用concat合并读取到的
如下所示:importglobimporttimeimportcsvcsvx_list=glob.glob('*.csv')#打开文件夹下全部的CSV文件pri