Загрузка данных


# Python 3.14
# pip install pillow

from PIL import Image

# Символы для рисунка
CHARS = " .:-=+*#|"

# Загружаем изображение
img = Image.open("1000003875.jpg").convert("L")

# Ширина ASCII-арта
WIDTH = 100

# Сохраняем пропорции
w, h = img.size
aspect_ratio = h / w
HEIGHT = int(WIDTH * aspect_ratio * 0.55)

img = img.resize((WIDTH, HEIGHT))

pixels = img.load()

# Рисуем символами
for y in range(HEIGHT):
    line = ""
    for x in range(WIDTH):
        brightness = pixels[x, y]

        # Подбор символа по яркости
        index = brightness * (len(CHARS) - 1) // 255
        line += CHARS[index]

    print(line)