делаем слайд шоу из ваших фото

import os
import tkinter as tk
from PIL import Image, ImageTk

class Slideshow:
    def __init__(self, root, folder):
        self.root = root
        self.root.title("Слайд-шоу")
        self.label = tk.Label(root)
        self.label.pack()

        self.images = self.load_images(folder)
        self.index = 0

        self.show_image()
        self.root.after(1000, self.next_image)  # Задержка 1 секунда

    def load_images(self, folder):
        images = []
        for root, dirs, files in os.walk(folder):
            for file in files:
                if file.lower().endswith('.jpg'):
                images.append(os.path.join(root, file))
        return images

    def show_image(self):
        if self.images:
            img = Image.open(self.images[self.index])
            self.photo = ImageTk.PhotoImage(img)
            self.label.config(image=self.photo)
            self.label.image = self.photo  # Сохраняем ссылку на изображение
            self.label.pack(expand=True)  # Центрируем изображение

    def next_image(self):
        self.index = (self.index + 1) % len(self.images)
        self.show_image()
        self.root.after(1000, self.next_image)  # Задержка 1 секунда

if __name__ == "__main__":
    folder_path = '.'  # Путь к папке с изображениями
    root = tk.Tk()
    root.geometry("800x600")  # Установите размер окна, если необходимо
    slideshow = Slideshow(root, folder_path)
    root.mainloop()




**

поместите эту программу в папку с фото jpg - запустите её
и она выведет 1 раз каждую секунду все изображения в папке
и также в других папках вложения если они есть
разрешение картинок можно изменить -  здесь оно 800x600


Убедитесь, что у вас установлены необходимые библиотеки.
Если нет, установите их в командном окне с помощью pip:

pip install pillow


Рецензии