Как читать трассировку ошибки (traceback)
Учимся не пугаться красного текста, а находить в нём причину проблемы.
Traceback — это подсказка, а не приговор
Когда программа падает, Python выводит traceback — трассировку. Новичка пугает простыня красного текста, но на деле это подробная подсказка: где именно и что пошло не так. Научиться её читать — половина успеха в отладке.
Читаем снизу вверх
Самое важное — в последней строке: там тип ошибки и короткое пояснение, например деление на ноль или обращение к несуществующему элементу. Строки выше показывают путь: какая функция какую вызвала, пока не случилась ошибка. Чаще всего причина — в самой нижней строке вашего собственного кода.
На что смотреть в первую очередь
Обратите внимание на имя файла и номер строки — это точный адрес проблемы. Откройте это место и прочитайте тип ошибки: он подсказывает направление. ValueError намекает на неверное значение, KeyError — на несуществующий ключ словаря, и так далее. Тип ошибки — ваш главный ориентир.
Частые вопросы
Почему traceback такой длинный? Он показывает всю цепочку вызовов. Вам обычно нужны две части: последняя строка (что за ошибка) и последняя строка с вашим файлом (где она произошла).
Как потренироваться читать ошибки? Пишите код и не бойтесь падений — каждая ошибка учит. В игровом тренажёре вроде Дрон Кодера результат виден сразу, и связь «команда → реакция» становится наглядной.
Начать игру бесплатно