glob模块是最简单的模块之一,内容非常少。用它可以查找符合特定规则的文件路径名。跟使用windows下的文件搜索差不多。
通配符
glob支持通配符匹配查找文件, 查找文件只用到三个匹配符:*
, ?
, []
。
-
*
匹配0个或多个字符; -
?
匹配单个字符; -
[]
匹配指定范围内的字符,如:[a-zA-Z0-9] 匹配数字和英文字符。
基本用法
-
glob.glob(pathname)
: 返回所有匹配的文件路径列表。它只有一个参数pathname,定义了文件路径匹配规则,这里可以是绝对路径,也可以是相对路径。 -
glob.iglob(pathname)
: 获取一个迭代器对象,使用它可以逐个获取匹配的文件路径名。与glob.glob()的区别是:glob.glob同时获取所有的匹配路径,而glob.iglob一次只获取一个匹配路径。
- 1、查找某路径下所有指定后缀的文件,比如查找D盘根目录下所有文本文件:
# -*- coding: utf-8 -*-
import glob
fstyle = r'D:\*.txt'
for f in glob.glob(fstyle):
print(f)
- 2、查找D盘根目录下文件名只有一个字符的文本文件:
fstyle = r'D:\?.txt'
for f in glob.glob(fstyle):
print(f)
- 3、查找D盘根目录文件名以英文字符(非数字)开头的文本文件:
fstyle = r'D:\[a-zA-Z]*.txt'
for f in glob.iglob(fstyle):
print(f)
网友评论