Привет у меня есть папка, которая состоит из 1000 изображений, все из которых являются PNG. Имя файла: 1.png, 2.png, 3.png ... все до 1000.
Вместо того, чтобы вручную создавать 10 подпапок для копирования и вставки изображений в каждую подпапку, я хочу переместить первые 100 изображений в папку 1, второй пакет изображений, т.е. 101-200 в папку 2, 201-300 в папку 3 и так до папки 10.
Возможно ли, что какой-то код Python, который может проанализировать имя изображения и создать новую папку и переместить туда соответствующие изображения?
2 ответа
Вы можете взглянуть на pathlib , который предоставляет методы для зацикливания содержимого папки.
С Path.iterdir () вы сможете циклически перебирать изображения. С Path.mkdir () вы сможете создавать нужные вам папки. Для перемещения файлов вы можете использовать Path.replace ( ) .
В качестве альтернативы вы можете использовать системные команды для этого, используя os.system .
Вы можете сделать это, используя pathlib. Этот код был протестирован в Python 3.8, но он должен работать и на других версиях.
from pathlib import Path
#0-99 (folder_0)
#100-199 (folder_1)
#...
MAX_FILES_PER_DIR = 100
pngDirectory = Path()
pngFiles = pngDirectory.glob('*.png') #find all png files in directory
for pngFile in pngFiles:
fileNumber = int(pngFile.name.split('.')[0]) #get number from filename
folderNumber = int(fileNumber / MAX_FILES_PER_DIR) #find which folder it belongs in
#create folder to put files in and mkdir if it doesn't exist
currentFolder = pngDirectory / "folder_{}".format(folderNumber)
if not currentFolder.exists():
currentFolder.mkdir()
#move your png file into that folder
pngFile.rename(currentFolder / pngFile.name)
Похожие вопросы
Новые вопросы
python
Python - это многопарадигмальный, динамически типизированный, многоцелевой язык программирования. Он разработан для быстрого изучения, понимания и использования, а также для обеспечения чистого и единообразного синтаксиса. Обратите внимание, что Python 2 официально не поддерживается с 01.01.2020. Тем не менее, для вопросов о Python, связанных с версией, добавьте тег [python-2.7] или [python-3.x]. При использовании варианта Python (например, Jython, PyPy) или библиотеки (например, Pandas и NumPy) включите его в теги.