Копирование Jpegs в Python - PullRequest
0 голосов
/ 20 июня 2019

Здравствуйте, я новый программист, пытающийся написать программу для копирования всех файлов JPEG, найденных на моем компьютере, в папку.

Программа, кажется, работает в том смысле, что она находит все файлы JPEG, но когдаПри копировании их в новую папку ничего не происходит.

Может кто-нибудь помочь мне?Спасибо

Я убедился, что разрешения для папки назначения хороши.

# program to go through all directories
# and copy found jpg files
# to new folder
import os
from shutil import copy2

#replace below with your directory / destination folder
src = "/home/coyotejoe"
dst = '/home/coyotejoe/Desktop/JPG'



for root, dirs, files in os.walk(src, topdown=True):
   for name in files:

         if name.endswith('jpg'):

            try:
               copy2(os.path.join(src,name), os.path.join(dst, name))

            except:
               pass

печатает имена всех jpegs, но папка назначения все еще пуста

1 Ответ

0 голосов
/ 20 июня 2019

Я попробовал ваш код на моем компьютере в каталоге с файлами 'png', и он работает.

#replace below with your directory / destination folder
src = "C:\S\SODTEST\SODTEST"
dst = 'C:\S\SODTEST'

import os
from shutil import copy2

for root, dirs, files in os.walk(src, topdown=True):
   for name in files:
         if name.endswith('png'):
            try:
               copy2(os.path.join(src,name), os.path.join(dst, name))

            except Exception as e:
                print(e)

Соблюдайте исключение, которое вы получаете вместо makine, оно молча терпит неудачу.

Вы ходите по осям и игнорируете подкаталоги. Если у вас есть подкаталоги с jpgs в них), используйте copy2(os.path.join(root, name), os.path.join(dst, name)).

...