Скопируйте изображения в подпапках в другой, используя Python - PullRequest
0 голосов
/ 11 сентября 2018

У меня есть папка со многими подпапками, которая содержит изображения.Я хочу скопировать эти изображения подпапок в папку назначения.Все изображения должны быть в одной папке.С моим текущим кодом Python копирует все подпапки в папку назначения, но это не то, что я хочу.Я только то, что .jpg изображений.Мой текущий код:

dir_src = r"/path/to/folder/with/subfolders"
dir_dst = r"/path/to/destination" 
for file in os.listdir(dir_src):
    print(file) 
    src_file = os.path.join(dir_src, file)
    dst_file = os.path.join(dir_dst, file)
    shutil.copytree(src_file, dst_file)

Я благодарен за каждый совет

1 Ответ

0 голосов
/ 11 сентября 2018

Вы можете использовать os.walk:

import os
from shutil import copy
dir_src = r"/path/to/folder/with/subfolders"
dir_dst = r"/path/to/destination"
for root, _, files in os.walk(dir_src):
    for file in files:
        if file.endswith('.jpg'):
            copy(os.path.join(root, file), dir_dst)

или вы можете использовать glob, если вы используете Python 3.5 +:

import glob
from shutil import copy
dir_src = r"/path/to/folder/with/subfolders"
dir_dst = r"/path/to/destination"
for file in glob.iglob('%s/**/*.jpg' % dir_src, recursive=True):
    copy(file, dir_dst)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...