Глава 7 · Глубокое погружение в Turtle

Мини-проект — смайлик

Собираем все приёмы главы в одном дружелюбном рисунке — и подводим итоги.

Финальный мини-проект главы: нарисуем простой смайлик, используя всё, что узнали — окружности, заливку, дуги и точки.

smajlik.py
import turtle

screen = turtle.Screen()
artist = turtle.Turtle()
artist.speed(0)

# лицо
artist.fillcolor("yellow")
artist.begin_fill()
artist.circle(100)
artist.end_fill()

# глаза
artist.penup()
artist.goto(-35, 120)
artist.pendown()
artist.dot(20, "black")
artist.penup()
artist.goto(35, 120)
artist.pendown()
artist.dot(20, "black")

# улыбка — нижняя дуга окружности
artist.penup()
artist.goto(-50, 60)
artist.setheading(-60)
artist.pendown()
artist.pensize(4)
artist.circle(60, 120)

artist.hideturtle()
screen.exitonclick()
★ Базовая практика
Другое настроение

Измените дугу улыбки на дугу нахмуренных бровей — переверните направление extent.

★★ Самостоятельная задача
Цветной смайлик

Смените fillcolor лица на любой другой цвет.

★★★ Задача повышенной сложности
Щёчки

Добавьте два маленьких розовых dot() под глазами — получатся румяные щёчки.

Итоги

Что мы узнали в этой главе

  • begin_fill()/end_fill() закрашивают фигуру выбранным цветом.
  • circle(радиус, extent) рисует окружности и дуги; отрицательный радиус меняет направление на противоположное.
  • write() выводит текст прямо на холсте.
  • stamp(), hideturtle() и undo() — полезные инструменты для более сложных рисунков.
  • Композиция из нескольких фигур (квадрат + окружность, смайлик) строится последовательным применением уже знакомых команд.