首页 > 解决方案 > pathlib match() 找不到相同模式的文件,可以通过 glob() 找到

问题描述

我既需要收集与某个目录下的模式匹配的文件,也需要确认位于该目录(或子目录)中的文件与该模式匹配。所以基本上我这样做:

Path('/foo').glob('bar/**/*.c')

这将返回“/foo/bar/file.c”。但如果我尝试另一种方式:

Path('/foo/bar/file.c').match('bar/**/*.c')

我只得到 False 回来。如果我删除'**',它会起作用:

Path('/foo/bar/file.c').match('bar/*.c')

如何在不改变模式的情况下让 glob() 和 match() 表现相同?我需要它递归地工作。

标签: python-3.x

解决方案


推荐阅读