python在多个文件夹下递归搜索指定的子文件夹下所有的图片文件并返回路径
时间: 2023-12-05 17:03:55 浏览: 105
可以使用Python的os和os.path模块来实现这个功能,下面是一个示例代码:
```python
import os
def find_images(root_folder, target_folder):
result = []
for root, dirs, files in os.walk(root_folder):
if target_folder in dirs:
target_path = os.path.join(root, target_folder)
for root2, dirs2, files2 in os.walk(target_path):
for file in files2:
if file.endswith('.jpg') or file.endswith('.jpeg') or file.endswith('.png') or file.endswith('.gif'):
result.append(os.path.join(target_path, file))
return result
```
这个函数的参数是两个:`root_folder`表示搜索的起始目录,`target_folder`表示要搜索的目标子文件夹名称。函数会递归搜索 `root_folder` 下的所有文件夹,找到包含 `target_folder` 的文件夹,并在其中搜索所有图片文件。如果找到了图片文件,就将其路径添加到结果列表中,最后返回结果列表。
示例调用代码:
```python
image_paths = find_images('.', 'images')
print(image_paths)
```
这个示例代码会在当前目录下递归搜索名为 `images` 的子文件夹,并返回其中所有的图片文件路径。
阅读全文