Как скопировать все файлы, существующие в одном каталоге к другому каталогу с помощью Python. У меня есть исходный путь и целевой путь как строка.
Вы можете используйте os.listdir () , чтобы получить файлы в исходном каталоге, os.path.isfile () , чтобы проверить, являются ли они обычными файлами (включая символические ссылки в системах * nix) и shutil.copy для копирования.
Следующий код копирует только обычные файлы из исходного каталога в целевой каталог (я предполагаю, что вы не хотите копировать какие-либо подкаталоги).
import os
import shutil
src_files = os.listdir(src)
for file_name in src_files:
full_file_name = os.path.join(src, file_name)
if os.path.isfile(full_file_name):
shutil.copy(full_file_name, dest)
Если вы не хотите копировать все дерево (с подкаталогами и т. Д.), Используйте или glob.glob ("путь / к / каталогу /*.*")
, чтобы получить список всех имен файлов, переберите список и используйте shutil.copy
для копирования каждого файла.
for filename in glob.glob(os.path.join(source_dir, '*.*')):
shutil.copy(filename, dest_dir)
Посмотрите на shutil в документации Python , особенно на команду copytree .