面试中遇到了一个问题,关于Python中glob的用法,以前一直没有关注过,回来之后了解了一下,并做如下总结:
Python中内置的glob文件搜索模块,里面一个比较重要的方法就是glob方法,它的作用就是用于搜索文件,并将搜索的到的结果返回到一个列表中,
这种搜索支持正则匹配,如一些常用的正则通配符:
* :表示匹配0个或者多个
?:表示一个
[ ] :表示范围
如需使用,使用前先导入glob,这里有两种方法导入glob
1、import glob
2、from glob import golb
下面的例子中会用这两种方法进行示范
#1、定义一个函数,搜索C盘下的所有文件和目录,并返回一个列表(这里使用import glob)
import glob
def search():
f = glob.glob(r'c:\*')
print(f)
if __name__ == "__main__":
search()
执行上面代码显示结果如下:
为了方便查看或者说让输出结果美观,我们可以结果从列表中遍历出来,分行显示
遍历方法比较简单,这里不再罗嗦,直接上结果
也可以利用正则将查询范围进行限定
#2、定义一个函数查询E盘中以.exe结尾的文件有哪些(这里使用from glob import glob):
from glob import glob
def search():
f = glob(r'e:\*.exe')
for i in f:
print(i)
if __name__ == "__main__":
search()
调用函数返回结果如下:
PS :
glob是Python中最简单的一个文件操作模块,就类似于windows下的文件搜索,常用Python这个方法是必须会用的
不然被人问到很没面子的,说多了都是泪