标准库--glob模块--查找文件目录和文件

标准库--glob模块--查找文件目录和文件,第1张

glob模块用来 查找文件目录和文件 ,并将搜索得到的结果返回到一个列表中,常见携陆旅的两个方法有glob.glob()和glob.iglob(), 可以和常用的find功能进行类比,glob支持 *、?、[]这三辩凳种通配符。

获取一个可编历对象,使用它可以逐个获取匹配的文件路径名。

与glob.glob()的区别是:glob.glob()可同时悉陪获取所有的匹配路径,而glob.iglob()一次只能获取一个匹配路径。

glob是python自己带的一个文件 *** 作相关模块,用它可以查找符合自己目的的文件,就类似于Windows下的文件搜索,支持通配符 *** 作,*,?,[]这三个通配符,*代表0个或多个字符,?代表一个字符,[]匹配指定范围内的字符,如[0-9]匹配数字。

它的主要方法就是glob,该方法返回所有匹冲肢配的文件路径列表,该方法需要一个参数用来指定匹配的路径字符串(本字符串可以为绝对拦蔽路径也可以为相对路径),其返回的简判州文件名只包括当前目录里的文件名,不包括子文件夹里的文件。

比如:

glob.glob(r'c:\*.txt')

我这里就是获得C盘下的所有txt文件

glob.glob(r'E:\pic\*\*.jpg')

获得指定目录下的所有jpg文件

使用相对路径:

glob.glob(r'../*.py')

使用路径对象glob()函数和rglob()函数,可以查看指定路径下的文件和子文件夹,两者亩裂磨的区别在于,glob()函数只进行一级查找,而rglob()函数会进行多级查找。

from pathlib import Path

p = Path('d:\\文源拦件夹\\')

r = p.glob('*')

for i in r:

    print(i) #显示glob()函数的结果

print('-' * 25) #这里是分割线

r = p.rglob('*')

for i in r:

    print(i)#显示rglob()函数的结果

查看对应迅斗结果如下:

d:\11\11.txt

d:\11\r.mp3

d:\11\t.mp3

d:\11\tp1000

d:\11\文件夹

-------------------------

d:\11\11.txt

d:\11\r.mp3

d:\11\t.mp3

d:\11\tp1000

d:\11\文件夹

d:\11\文件夹\文档.txt

________________END______________


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/12221156.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存