您现在的位置是:群英 > 开发技术 > Python语言
Python中glob函数有何用,用法是什么?
Admin发表于 2021-12-04 17:46:552598 次浏览

    这篇文章给大家分享的是Python模块的glob模块的相关内容。glob模块也是Python标准库中一个重要的模块,小编觉得比较实用的,因此分享给大家做个参考,文中示例代码介绍的非常详细,感兴趣的朋友接下来一起跟随小编看看吧。

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

    支持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库是互补的,我们要善于发挥各自的优势,充分利用它们的优势,帮助我们快速的操作文件和文件夹。

    以上就是Python中glob模块相关内容的介绍,上述示例具有一定的借鉴价值,有需要的朋友可以参考学习,希望对大家学习glob模块的使用有帮助,想要了解更多可以继续浏览群英网络其他相关的文章。

文本转载自脚本之家

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

标签: glob模块
相关信息推荐
2022-01-05 18:43:17 
摘要:PHP里数值类型转布尔类型有什么方法?在实际的PHP项目中,有时候我们需要将数值类型转布尔类型,那么需要怎样来实现呢?接下来给大家分享三种实现方法,文中的示例代码介绍得很详细,有需要的朋友可以参考,接下来就跟随小编一起了解看看吧。
2022-04-26 14:39:45 
摘要:这篇文章主要介绍了Spring Boot异常处理静止trace,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 概述,在spring boot 2.2 中 默认状态为status 999。
2022-06-02 17:22:10 
摘要:移除方法:1、用“$index=floor(count($arr1)/2);”语句获取数组中间位置的索引;2、用array_splice()从获取的索引处开始删除1个元素,语法“array_splice($arr1,$index,1);”。
群英网络助力开启安全的云计算之旅
立即注册,领取新人大礼包
  • 联系我们
  • 24小时售后:4006784567
  • 24小时TEL :0668-2555666
  • 售前咨询TEL:400-678-4567

  • 官方微信

    官方微信
Copyright  ©  QY  Network  Company  Ltd. All  Rights  Reserved. 2003-2019  群英网络  版权所有   茂名市群英网络有限公司
增值电信经营许可证 : B1.B2-20140078   粤ICP备09006778号
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
微信公众号
返回顶部
返回顶部 返回顶部