我有一个包含几个子目录的目录。在每个子目录中,文件很少,我想获取文件名中包含单词“ raw”且以“ .txt”结尾的文件的完整路径(在每个目录中,文件中都包含“原始”)。
任何人都知道如何使用python 3优雅地做到这一点吗?
答案 0 :(得分:1)
我们可以使用Path.resolve
方法获取目录的绝对路径,然后使用Path.glob
收集Path
对象,这些对象代表我们要检索的文件的路径。 / p>
from pathlib import Path
paths = [path for path in Path('path/to/dir').resolve().glob("**/*raw*.txt")]
此处的搜索由**/*raw*.txt
指定。这将返回一定数量的Path
对象(具体类型取决于您使用的操作系统)。
如果您希望将它们作为字符串,则可以用上面的[str(path) for path in ..]