Python | glob模块使用
glob模块简介
glob模块可以查找符合特定规则的文件路径名,用来查找文件目录和文件,并将搜索的到的结果返回到一个列表中。常见的两个方法有glob.glob()
和glob.iglob()
,类似windows下的文件搜索。glob支持*?[]
这三种通配符。
glob模块的使用
- 导入方法:
import glob #导入整个glob模块
from glob import glob #从glob模块导入glob函数
- 3个通配符:
*
代表0个或多个字符?
代表一个字符[]
匹配指定范围内的字符,如[0-9]匹配数字
glob模块的常用方法
1.glob.glob
返回所有匹配的文件路径列表。它只有一个参数pathname,定义了文件路径匹配规则,这里可以是绝对路径,也可以是相对路径。
使用示例:
import glob
#获取指定目录下的所有图片
print (glob.glob(r"/home/qiaoyunhao/*/*.png"),"\n")#加上r让字符串不转义
#获取上级目录的所有.py文件
print (glob.glob(r'../*.py')) #相对路径
结果:
请注意,glob.glob()
函数返回的是一个符合模式的文件路径名列表。如果没有符合模式的文件,它将返回一个空列表。
2.glob.iglob
获取一个可遍历对象,使用它可以逐个获取匹配的文件路径名。与glob.glob()
的区别:glob.glob
同时获取所有的匹配路径,而glob.iglob
一次只获取一个匹配路径。
使用示例:
import glob
#父目录中的.py文件
f = glob.iglob(r'../*.py')
print(f) #<generator object iglob at 0x00B9FF80>
for py in f:
print(py)
结果: