本文记录Python 获取指定文件夹内所有文件的方法。
测试环境 {#测试环境}
新建了3个文件夹和11个文件
glob {#glob}
glob模块可以返回指定路径(可绝对/可相对)下的符合制定匹配模式的文件路径。
*
: 匹配0或多个任意字符?
: 匹配单个字符[]
: 匹配范围内的字符(如[a-d]
匹配a,b,c,d)
glob.glob {#glob-glob}
返回所有匹配文件路径列表,参数为pathname,该参数中定义路径匹配规则。
用例1
用例2
用例3
用例4
glob.iglob {#glob-iglob}
iglob返回generator对象,每次调用返回一个路径。
OS {#OS}
glob方便好用,但是从上述用例输出可以看出glob难以区分文件夹和文件,只识别名称,虽然绝大多数情况文件有后缀,为以往万一,在此补充OS返回指定文件夹下文件名的方法。
OS.walk {#OS-walk}
OS.walk(filepath) 返回指定目录下所有目录、文件、子目录下的目录、文件。
- i:父目录路径
- j:父目录内文件夹
- k:父目录内文件
os.listdir {#os-listdir}
os.listdir(filepath)和glob.glob('*')效果类似,返回文件夹下所有文件与文件夹名。
获取源码 {#获取源码}
文中测试环境与所有源码可在Github下载。
文章链接:
https://www.zywvvd.com/notes/coding/python/file-list/python-file-list/