从多个文件夹里的子文件夹提取100张图片代码 用python写
时间: 2023-05-19 11:02:39 浏览: 161
以下是一个可以从多个文件夹里的子文件夹提取100张图片的 Python 代码示例:
```python
import os
import random
import shutil
# 设置要提取的图片数量
num_images = 100
# 设置要搜索的文件夹路径
root_dir = '/path/to/root/folder'
# 获取所有子文件夹的路径
sub_dirs = [os.path.join(root_dir, d) for d in os.listdir(root_dir) if os.path.isdir(os.path.join(root_dir, d))]
# 遍历所有子文件夹,获取所有图片路径
image_paths = []
for sub_dir in sub_dirs:
for dirpath, dirnames, filenames in os.walk(sub_dir):
for filename in filenames:
if filename.endswith('.jpg') or filename.endswith('.jpeg') or filename.endswith('.png'):
image_paths.append(os.path.join(dirpath, filename))
# 随机选择要提取的图片
selected_image_paths = random.sample(image_paths, num_images)
# 将选中的图片复制到新的文件夹中
output_dir = '/path/to/output/folder'
if not os.path.exists(output_dir):
os.makedirs(output_dir)
for image_path in selected_image_paths:
shutil.copy(image_path, output_dir)
```
这段代码会从指定的根文件夹中搜索所有子文件夹,然后遍历每个子文件夹中的所有图片文件,并随机选择指定数量的图片,最后将这些图片复制到指定的输出文件夹中。
阅读全文