Программирование сегодня превратилось в универсальный инструмент, который помогает не только вычислять налоги или запускать сайты, но и творить. Одним из самых интересных направлений для начинающих программистов является компьютерная графика. Создание простых картинок и узоров через код помогает быстро увидеть результат своих трудов и разобраться в логике работы компьютера.
Язык Python появился в конце 1980-х годов благодаря программисту из Голландии Гвидо ван Россуму. Главной идеей создателя стало написание максимально понятного кода, который напоминал бы обычную человеческую речь [4]. Популярное мнение о том, что название связано с рептилиями, ошибочно. Автор вдохновлялся британским комедийным шоу «Летающий цирк Монти Пайтона», желая добавить своему проекту немного легкости [3].
Сегодня Python выбирают за его логичность и огромный выбор готовых инструментов. Программы на нем работают на Windows, Mac и Linux без переделок. Конечно, у него есть свои особенности: он работает медленнее, чем некоторые другие языки, но для большинства задач, особенно в графике, его скорости вполне хватает. Для рисования на Python существуют стандартные наборы команд, которые называют библиотеками. Мы рассмотрим две основные [2]:
- Turtle («Черепашка»). Принцип работы напоминает управление маленьким роботом. Черепашка ползает по экрану и оставляет за собой след. Мы даем ей команды: «иди вперед», «поверни налево», «подними перо». Указанный способ отлично подходит для изучения геометрии, так как процесс рисования повторяет движения руки человека с карандашом [1].
- Tkinter. Данная библиотека используется для создания полноценных окон программ с кнопками и меню. Внутри нее есть «Холст» (Canvas). Здесь мы не ведем линию пошагово, а указываем точные координаты точек на плоскости [4].
Для создания графических окон в Python стандартно применяют библиотеку Tkinter. Ее работа строится на принципе «Холста» (Canvas) — области, где каждая точка имеет свой адрес. Точка (0, 0) находится в левом верхнем углу. Прямоугольник строится по двум точкам, координатам левого верхнего и правого нижнего углов (см. рис. 1).
Рис. 1. Создание прямоугольника в Python
Квадрат — частный случай, где разница между координатами по горизонтали и вертикали совпадает. На рис. 2 видно, как заданные цифры превращаются в четкие границы. Параметр fill отвечает за заливку, а outline за рамку.
Рис. 2. Создание квадрата в Python
Овал в Tkinter создается путем «вписывания» в невидимую прямоугольную рамку (см. рис. 3).
Рис. 3. Создание овала в Python
Линия же просто соединяет две точки. Как показано на рис. 4, линия может пересекать другие объекты, создавая эффект наслоения.
Рис. 4. Создание линии в Python
Для создания фигур с произвольным количеством углов используют функцию create_polygon. Здесь нужно перечислить координаты всех вершин. На рис. 5 представлен результат, как программа последовательно соединила квадрат и в нем круг
Рис. 5. Квадрат и в нем круг
Библиотека Turtle работает иначе. Представьте робота-черепашку с пером, который ползает по экрану. Мы даем команды движения, а он оставляет след. Данный подход развивает алгоритмическое мышление.
Использование функций дает возможность создавать повторяющиеся элементы без дублирования кода.
Для создания сложных узоров понадобятся циклы. Например, чтобы расставить точки по кругу, нужно рассчитать шаг поворота. Результат на рис. 6 показывает круг из красных точек.
Рис. 6. Круг с заданным количеством точек
Волны же создаются путем чередования радиусов в команде circle (см. рис. 7.
Рис. 7. Волны, закрашенные в верхней части
Особый интерес вызывает создание «Новогодней елки». Данная фигура состоит из множества треугольников и прямоугольника-ствола. Здесь важно правильно сочетать команды движения и заливки цветом через beginfill() и endfill(). Код сначала очерчивает контур, а затем заполняет его зеленым или коричневым цветом. На рис. 8 видим готовую композицию. Данный программный код наглядно объединяет геометрию и логику последовательных действий.
Рис. 8. Новогодняя ёлка в Python
Вершиной мастерства для новичка становится работа с движущимися объектами. Даже без использования специальных игровых движков Python дает возможность создать эффект вращающегося куба прямо в текстовом окне. Здесь на помощь приходит математика. Программа вычисляет, как точки объемного куба должны проецироваться на плоский экран при повороте на определенный градус. Математические формулы пересчитывают координаты в реальном времени, создавая иллюзию объема и вращения.
Подводя итоги, отметим, что изучение графики на Python показывает, насколько гибким и понятным является данный язык. Мы прошли путь от простых линий на холсте до алгоритмических узоров и объемных моделей. Главное преимущество такого подхода — наглядность. Каждая строчка кода сразу превращается в часть рисунка, что делает обучение увлекательным.
Создание геометрических фигур, только первая ступень. Знания основ работы с координатами и циклами станут базой для разработки собственных игр, программ для дизайна или систем визуализации данных.
Литература:
- Бухаров, Т. А. Обзор языка программирования Python и его библиотек / Т. А. Бухаров, А. Р. Нафикова, Е. А. Мигранова // Colloquium-Journal. — 2019. — № 3–1(27). — С. 23–25.
- Соколенко, В. М. Язык программирования Python / В. М. Соколенко // Наука и технологии в современном мире: материалы Восьмой региональной научно-практической конференции, посвященной 85-летию РГЭУ (РИНХ), Кисловодск, 15 апреля 2016 года / Министерство образования и науки РФ; Ростовский государственный экономический университет, филиал в г. Кисловодске. — Кисловодск: Учебный центр «Магистр», 2016. — С. 160–164.
- Python на примерах. Практический курс по программированию. Издательство: Наука и техника, 2016. — 432 с.
- Стивенсон Б. Python. Сборник упражнений / пер. с англ. А. Ю. Гинько. — М.: ДМК Пресс, 2021. — 238 с.

