Как копировать в файл каталога без расширения - только после самого имени - PullRequest
0 голосов
/ 18 декабря 2018

Интересно, как я могу копировать файлы только по имени.Например: у меня есть

file.png , file2222.png , file.jpeg , file.jpg , file.txt

Я могу использовать:

for f in files:    
shutil.copy(f, dest)

Но я также должен предоставить расширение, потому что теперь компьютер не понимает, чтофайл есть.У него должно быть заданное имя_файла.file_extension.

FileNotFoundError: [Errno 2] Нет такого файла или каталога: '... path / file1'

Я могу улучшить:

for f in files:    
shutil.copy(f + '.txt', dest)

Как скопировать все файлы 'file. *' С разными расширениями?

1 Ответ

0 голосов
/ 18 декабря 2018

Вы можете попробовать использовать listdir и isfile из модуля os, чтобы получить список всех файлов в папке:

Код:

import os
import shutil

dir = '.'
# get content of the dir
content = os.listdir(dir)
# get only files in dir. file names will be with extensions
list_of_files = [i for i in content if os.path.isfile(i)]

# copy files to new destination
dest = 'dest'  # for example
for file in list_of_files:    
    shutil.copy(os.path.join(dir, file), os.path.join(dest, file))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...