Красный текст в терминале — это не провал, а подсказка. Python всегда пишет, ЧТО его смутило и ГДЕ. Научишься читать ошибки — будешь чинить программы за минуту. Это умеют все настоящие программисты.
File "…", line N — ГДЕ это случилось (номер строки!). Всё
остальное — путь, как Python туда добрался. Смотри сначала на низ.
Разберём по частям типичный «traceback» (так называется отчёт об ошибке):
Видишь? Низ говорит «не знаю слова scren», а строчка
line 17 показывает, куда смотреть. Дальше — словарик частых
ошибок.
Что значит: Python встретил слово, которого не знает. Почти всегда это
опечатка в имени: переменную ты заводил как screen, а
написал scren.
Как починить: сравни написание буква в букву с тем местом, где ты создавал эту переменную.
Что значит: «синтаксис» — это грамматика языка. После
while, if, for и def в
конце строки нужно двоеточие. Стрелочка ^ показывает, где
Python запутался.
Как починить: добавь : в конец строки →
while True:
Что значит: в Python отступы (пробелы слева) показывают, что
находится внутри цикла или if. Строки внутри while
должны быть сдвинуты вправо.
Как починить: поставь курсор в начало строки и нажми Tab (или 4 пробела), чтобы код «зашёл внутрь» цикла.
Что значит: ты просишь у списка элемент, которого нет. Если в
snake три клетки — есть номера 0, 1,
2, а snake[5] уже за краем.
Как починить: помни — счёт с нуля. Голова — snake[0],
самый последний элемент — snake[-1].
Что значит: ты складываешь разные «типы»: кортеж (5, 10) и
число 1 — так нельзя. Числа складываются с числами, текст с
текстом.
Как починить: сложи по отдельности x и y:
(snake[0][0] + 1, snake[0][1]).
Что значит: Python не нашёл библиотеку pygame. Чаще всего ты не в «коробке» venv или ещё не поставил pygame.
Как починить: в терминале набери
source .venv/bin/activate, потом
pip install pygame-ce. Подробно — на странице
Подготовка.
print(…) — вставь его, чтобы увидеть,
что лежит в переменной прямо сейчас.