Перенос файлов между папками в Python можно реализовать с помощью модулей `os` и `shutil`. Для начала продемонстрирую, как перенести один файл.
```python
import shutil
# Путь к исходному файлу
source_path = '/path/to/source/file.txt'
# Путь к целевой папке
destination_path = '/path/to/destination/file.txt'
# Перемещение файла
shutil.move(source_path, destination_path)
```
Теперь по поводу создания папок и перемещения фотографий. Вам нужно будет создать код, который сделает следующее:
1. Создает 30 новых папок.
2. Перемещает по одной фотографии из каждой из 6 исходных папок в каждую из созданных папок. Одна фотография взята в порядке очередности.
Пример такого скрипта:
```python
import os
import shutil
# Пути к исходным папкам
source_folders = ['/path/to/source/folder1', '/path/to/source/folder2', '/path/to/source/folder3',
'/path/to/source/folder4', '/path/to/source/folder5', '/path/to/source/folder6']
# Пути к папке, куда будут создаваться новые папки
base_destination = '/path/to/destination/folders'
# Создаем 30 новых папок
for i in range(1, 31):
current_folder = os.path.join(base_destination, f'folder_{i:02d}')
os.makedirs(current_folder, exist_ok=True)
# Идем по 6 исходным папкам
for folder in source_folders:
# Получаем список файлов в каждой исходной папке
files = [f for f in os.listdir(folder) if os.path.isfile(os.path.join(folder, f))]
files.sort() # Сортируем, чтобы порядок был детерминированным
# Проверяем, есть ли файлы для перемещения
if files:
# Возьмем первый файл, чтобы переместить
file_to_move = files[0]
# Путь к исходному файлу
source_file_path = os.path.join(folder, file_to_move)
# Путь к новому файлу в текущей созданной папке
destination_file_path = os.path.join(current_folder, file_to_move)
# Перемещаем файл
shutil.move(source_file_path, destination_file_path)
```
Важно, что в этом коде файлы в исходных папках перемещаются (то есть удаляются из исходных папок). После выполнения этого кода в каждой из созданных 30 папок будет по 6 фотографий, взятых из 6 разных исходных папок. Важно также убедиться, что в каждой исходной папке достаточно изображений, чтобы распределить по новым папкам.
Обратите внимание, что `os.makedirs(current_folder, exist_ok=True)` создаст новую папку, если она еще не существует, и не вызовет ошибку, если такая папка уже есть. Также параметр `exist_ok=True` позволяет избежать исключения, если папка уже существует. В этом примере я предполагаю, что фотографии расположены прямо в исходных папках и не требуют рекурсивного поиска в подпапках.