Python | glob模块使用

发布时间 2023-07-07 19:02:04作者: 张Zong在修行

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)

结果: