Давайте дополним вашу программу управления Черепашкой для обработки всех направлений движения. Вот полное решение с пояснениями.
Полный код программы
from turtle import *
# Функция для движения вверх
def go_up():
t.setheading(90) # Устанавливаем направление вверх
t.forward(10) # Двигаемся вперед на 10 пикселей
# Функция для движения вниз
def go_down():
t.setheading(270) # Устанавливаем направление вниз
t.forward(10) # Двигаемся вперед на 10 пикселей
# Функция для движения влево
def go_left():
t.setheading(180) # Устанавливаем направление влево
t.forward(10) # Двигаемся вперед на 10 пикселей
# Функция для движения вправо
def go_right():
t.setheading(0) # Устанавливаем направление вправо
t.forward(10) # Двигаемся вперед на 10 пикселей
# Создание объекта Черепашки
t = Turtle()
t.shape("turtle") # Задаем форму Черепашки
t.penup() # Поднимаем перо, чтобы не оставлять следы
# Получаем экран для управления событиями
scr = t.getscreen()
scr.listen() # Начинаем слушать нажатия клавиш
# Привязываем функции к клавишам
scr.onkey(go_up, "up") # Подъем при нажатии "вверх"
scr.onkey(go_down, "down") # Опускание при нажатии "вниз"
scr.onkey(go_left, "left") # Движение влево при нажатии "влево"
scr.onkey(go_right, "right")# Движение вправо при нажатии "вправо"
exitonclick() # Закрываем окно по клику
Пояснения к коду
Импорт модуля: Сначала мы импортируем модуль
turtle, который содержит инструменты для рисования, включая наш объект Черепашки (Turtle).Определение функций: Мы определяем четыре функции, одна для каждого направления (вверх, вниз, влево, вправо):
- В каждой функции мы используем метод
setheading()для установки направления (измеряется в градусах: 0° — вправо, 90° — вверх, 180° — влево, 270° — вниз). - Затем вызываем
forward(10), чтобы переместить Черепашку на 10 пикселей в заданном направлении.
- В каждой функции мы используем метод
Создание объекта Черепашки: Объект
t— это наша Черепашка, которой мы задаем форму и поднимаем перо, чтобы движения не оставляли следов на экране.Настройка управления: Мы получаем экран
scr, на котором происходит отрисовка, и начинаем слушать нажатия клавиш. Затем связываем нажатия клавиш с соответствующими функциями.Закрытие приложения: Используем
exitonclick(), чтобы окно программы закрывалось при клике в любом месте.
Теперь ваша программа управления Черепашкой готова! Если у вас есть еще вопросы, не стесняйтесь спрашивать!