Python:os.walk 搜索特定目录

问题描述 投票:0回答:1

我想遍历路径来查找文件。 但我想搜索特定的文件夹路径。 就像我想找到“folder2_2”,然后找到“folder2_2_2”,然后暴力破解所有子文件夹和文件。

简单地使用 os.walk 遍历每条可能的路径需要很长时间。 请帮忙

|folder1
---|folder1_1
---|folder1_2
---|folder1_3
|folder2
---|folder2_1
---|folder2_2
---|---|folder2_2_1
---|---|folder2_2_2
---|---|folder2_2_3
---|folder2_3
|folder3
---|folder3_1
---|folder3_2
...

...

python os.walk
1个回答
0
投票

设置示例文件夹结构:

from pathlib import Path
import itertools

for outer,inner in itertools.product(range(1,4),range(1,4)):
    p = Path('.') / f"folder{outer}" / f"folder{outer}_{inner}"
    p.mkdir(parents=True, exist_ok=True)
f = p / "FILE!"
f.touch()
.
└── folder1
│   └── folder1_1
│   └── folder1_2
│   └── folder1_3
└── folder2
│   └── folder2_1
│   └── folder2_2
│   └── folder2_3
└── folder3
│   └── folder3_1
│   └── folder3_2
│   └── folder3_3
│       └── FILE!

独家搜索文件:

list(Path().glob("**/*FILE*"))
# [PosixPath('folder3/folder3_3/FILE!')]
© www.soinside.com 2019 - 2024. All rights reserved.