Python模块——glob模块详解

网友投稿 2271 2022-09-06

Python模块——glob模块详解

Python模块——glob模块详解

本文大纲

​​glob模块​​​也是Python标准库中一个重要的模块,主要用来查找​​符合特定规则​​​的目录和文件,并将搜索的到的结果返回到一个列表中。使用这个模块最主要的原因就是,该模块​​支持​​​几个特殊的​​正则通配符​​,用起来贼方便,这个将会在下方为大家进行详细讲解。

支持4个常用的通配符

使用glob模块能够快速查找我们想要的目录和文件,就是由于它支持​​*​​​、​​**​​​、​​?​​​ 、​​[ ]​​这三个通配符,那么它们到底是 什么意思呢?

​​*​​:匹配0个或多个字符;​​**​​:匹配所有文件、目录、子目录和子目录里的文件(3.5版本新增);​​?​​:代匹配一个字符;​​[]​​:匹配指定范围内的字符,如[0-9]匹配数字,[a-z]匹配小写字母;​​注意​​:这3个通配符的用法,将在讲函数的时候,一起带大家操作一遍;

glob库中主要的3个函数

其实glob库很简单,只有3个主要函数供我们使用,它们分别是​​glob()​​​、​​iglob()​​​、​​escape()​​函数,因此学习起来特别容易。

​​glob.glob()​​:返回符合匹配条件的所有文件的路径;​​glob.iglob()​​:返回一个迭代器对象,需要循环遍历获取每个元素,得到的也是符合匹配条件的所有文件的路径;​​glob.escape()​​:escape可以忽略所有的特殊字符,就是星号、问号、中括号,用处不大;​​recursive=False​​​:代表递归调用,与特殊通配符​​“**”​​一同使用,默认为False,False表示不递归调用,True表示递归调用;

1)glob()函数

path1 = r"C:\Users\黄伟\Desktop\publish\os模块\test_shutil_a\[0-9].png"glob.glob(path1)path2 = r"C:\Users\黄伟\Desktop\publish\os模块\test_shutil_a\[0-9a-z].*"glob.glob(path2)

结果如下:

2)iglob()函数

path1 = r"C:\Users\黄伟\Desktop\publish\os模块\test_shutil_a\[0-9].png"a = glob.iglob(path1)for i in a: print(i)

结果如下:

3)escape()函数

通过下方两行代码的对比,可以看出escape()函数只是让​​*​​只表示它本来的意思,而不再具有通配符的作用。

glob.glob('t*')glob.escape('t*')

结果如下:

总结

通过上面的叙述可以知道,glob库其实并没有很多东西,就记住​​3个通配符​​​、​​3个函数​​即可。对于我们来说,glob库就是方便我们查找文件而诞生的,因此我们好好掌握glob()这一个函数,其实就够了,其它的知道、会用就行。

我们还需要注意一点,​​os库​​​、​​shutil库​​​、​​glob库​​是互补的,我们要善于发挥各自的优势,充分利用它们的优势,帮助我们快速的操作文件和文件夹。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:win 10 库 在哪
下一篇:SQL Server调优系列基础篇(索引运算总结)(sql语句)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~