Как читать сообщения об ошибках в Python
Ошибка — это не крик о провале, а подсказка, где и что поправить. Научимся её читать.
Ошибка — это помощь
Красный текст пугает новичка, но на деле Python старается помочь: он говорит, что именно пошло не так и в какой строке. Стоит один раз научиться читать эти сообщения — и половина проблем решается за минуту.
Тип и строка
В сообщении две главные вещи: тип ошибки (например, SyntaxError или NameError) и номер строки, где Python споткнулся. Тип подсказывает характер проблемы, строка — где искать. Начинайте всегда с них.
print(x)
# NameError: name 'x' is not defined
# -> переменная x не создана до использования
Читайте снизу вверх
Когда ошибок несколько (traceback), самое полезное — в самой нижней строке: там тип и краткое описание. Выше — путь, как программа дошла до ошибки. Новичку почти всегда достаточно прочитать нижнюю строку и указанный номер строки.
Что делать дальше
Прочитали тип и строку — идите в эту строку и рядом. Часто ошибка на строке чуть выше указанной (например, забытая скобка). Не поняли текст — скопируйте его в поиск: почти любую ошибку новичка уже кто-то разбирал.
Частые вопросы
Почему указана не та строка? Иногда причина строкой выше (незакрытая скобка/кавычка) — проверьте соседние.
Нужно ли знать английский? Достаточно узнавать несколько ключевых слов; остальное переведёт браузер.
Начать игру бесплатно