Tera4Byte
@Tera4Byte
-

Как перед «.png», «.jpeg» и др. добавить новый кусок текста?

Я работаю с библиотекой "Pillow" для работы с фотографиями. Создаю список изображений, которые есть в папке, и получаю на выходе: ['какая-то_фотка.png', 'хомяк.jpeg']. Затем, создаю новые изображения с разрешением 200px(сам задал такой параметр). НО мне ещё надо переименовать их, т.е. на выходе получать не только сами новые изображения, но предписать текст '_s' перед ".", и это должно выглядеть следующим образом: ['какая-то_фотка_s.png', 'хомяк_s.jpeg'].
Вопрос только один: как это сделать?

Вот кусок кода:

import os
from PIL import Image

directory = 'C:\\Users\\user\\Desktop\\*каталог, в котором находятся изображения*\\'
images = os.listdir(directory)
count = 0

for i in range(len(images)):
        count +=1
        img = Image.open(directory + images[count])
        img_size = (200, 200)
        img.thumbnail(img_size)
        img.save(images[count])
  • Вопрос задан
  • 77 просмотров
Решения вопроса 1
SoreMix
@SoreMix Куратор тега Python
yellow
import os
from PIL import Image

directory = r'C:\Users\user\Desktop\*каталог, в котором находятся изображения*'
images = os.listdir(directory)

for image_name in images:
    image_path = os.path.join(directory, image_name)
    img = Image.open(image_path)
    img_size = (200, 200)
    img.thumbnail(img_size)
    new_image_name = '_s.'.join(image_name.rsplit('.', 1))
    new_image_path = os.path.join(directory, new_image_name)
    img.save(new_image_path)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы