Памятки · 7 минут

Прочитай ошибку, а не гадай

Три частые ошибки, исправленные примеры и порядок проверки программы.

Что разберём

Три частые ошибки, исправленные примеры и порядок проверки программы.

Смотри на последнюю строку

В сообщении Python обычно есть тип ошибки и пояснение. Выше — место, где выполнение остановилось. Найди строку в своём файле и прочитай её вместе с соседними строками. Указанное место помогает начать поиск, но причина иногда находится выше.

SyntaxError: нарушена запись команды

Пример для практики
Было:
print("Привет"

Стало:
print("Привет")

Проверь парные скобки и кавычки. После if, for, while и объявления функции нужен знак двоеточия, а вложенные команды пишутся с отступом.

NameError: имя ещё не определено

Пример для практики
Было:
name = "Саша"
print(nmae)

Стало:
name = "Саша"
print(name)

Проверь опечатку, регистр букв и то, что присваивание выполнилось до использования переменной.

TypeError: не подходят типы данных

Пример для практики
Было:
age = "12"
print(age + 1)

Стало:
age = "12"
print(int(age) + 1)

Строка "12" и число 12 — разные значения. Преобразование int() сработает для такой строки, но текст "двенадцать" вызовет ValueError. Если вводит пользователь, этот случай тоже нужно обработать.

Меняй по одной вещи

Пример для практики
1. Сохрани исходную версию.
2. Повтори ошибку с тем же вводом.
3. Проверь значения и типы через print(value, type(value)).
4. Исправь одну предполагаемую причину.
5. Запусти прежний пример снова.
6. Проверь пустой, обычный и неожиданный ввод.

Как попросить помощи

Пришли минимальный код, который воспроизводит ошибку, полный текст сообщения, свой ввод и ожидаемый результат. Удали пароли, токены и личные данные. Скриншот может дополнять сообщение, но код и ошибку удобнее прислать текстом.

Скачать памятку ↓