如何在子目录中获取包含目录python中特定字符串的文件的路径

时间:2018-06-25 13:53:28

标签: python-3.x

我有一个包含几个子目录的目录。在每个子目录中,文件很少,我想获取文件名中包含单词“ raw”且以“ .txt”结尾的文件的完整路径(在每个目录中,文件中都包含“原始”)。

任何人都知道如何使用python 3优雅地做到这一点吗?

1 个答案:

答案 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 ..]