python 里面的glob模块是怎么用的
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 里面的glob模块是怎么用的相关的知识,希望对你有一定的参考价值。
新手刚学这一块内容,不是很懂
这个模块可以用来统计每个类型物品的统计吗
最好可以具体举个例子好懂一些的,
它的主要方法就是glob,该方法返回所有匹配的文件路径列表,该方法需要一个参数用来指定匹配的路径字符串(本字符串可以为绝对路径也可以为相对路径),其返回的文件名只包括当前目录里的文件名,不包括子文件夹里的文件。
比如:
glob.glob(r'c:\*.txt')
我这里就是获得C盘下的所有txt文件
glob.glob(r'E:\pic\*\*.jpg')
获得指定目录下的所有jpg文件
使用相对路径:
glob.glob(r'../*.py') 参考技术A 不知道楼主有没有Linux\Unix的使用经验
帮助文档里写的很清楚:
glob — Unix
style pathname pattern expansion
用来匹配文件路径名的
例如:
>>> import glob
>>> glob.glob('*.mp3') # 当前目录下所有mp3文件,* 匹配任意多字符
['1.mp3', 'card.mp3']
>>> glob.glob('?.mp3') # 当前目录下文件名为1个字符的mp3文件,?匹配单个字符
['1.mp3']
python中的glob模块
简介
glob() 函数返回匹配指定模式的文件名或目录。 该函数返回一个包含有匹配文件 / 目录的列表。如果出错返回 False。
方法介绍
.glob(pathname, *, recursive=False)
"""Return a list of paths matching a pathname pattern. The pattern may contain simple shell-style wildcards a la fnmatch. However, unlike fnmatch, filenames starting with a dot are special cases that are not matched by ‘*‘ and ‘?‘ patterns. If recursive is true, the pattern ‘**‘ will match any files and zero or more directories and subdirectories. """ # recursive默认为False,表示只返回该路径下的目录及文件列表;如果为True,则路径后应该跟**,可递归返回该路径下的所有目录及目录下的文件,否则效果跟False一样 glob.glob(r"C:\Users\Desktop\FinanicalBook\.*") # 返回所有的隐藏目录及文件列表 glob.glob(r"C:\Users\Desktop\FinanicalBook\*") # 返回FinanicalBook目录下的所有目录及文件列表 glob.glob(r"C:\Users\Desktop\FinanicalBook\a*") # 返回以a开头的目录及文件列表 glob.glob(r"C:\Users\Desktop\FinanicalBook\*q") # 返回以q结尾的目录及文件列表 glob.glob(r"C:\Users\Desktop\FinanicalBook\**", recursive=True) # 递归匹配任何文件以及零个或多个目录和子目录
.iglob(pathname, *, recursive=False)
用法跟glob()一样,只不过该函数的返回值是一个generator(生成器)
.escape(pathname)
""" Escape all special characters. Escaping is done by wrapping any of "*?[" between square brackets """ # 转义所有特殊字符 # 转义是通过在方括号之间包装“*?[”来完成的 # 例: res = glob.escape(r"C:\Users\Desktop\FinanicalBook\*..\?\[A-Z^$|\res") # C:\Users\Desktop\FinanicalBook\[*]..\[?]\[[]A-Z^$|\res
以上是关于python 里面的glob模块是怎么用的的主要内容,如果未能解决你的问题,请参考以下文章