Отладка относится к числу навыков, овладев которыми, вы значительно продвинете
свои навыки отслеживания багов в коде. Большинство новичков пренебрежительно
относятся к важности отладчика Python (pdb
). В данной главе я расскажу
лишь о нескольких важных командах. Узнать больше вы можете из официальной
документации.
Вы можете запустить скрипт из командной строки вместе с отладчиком. Пример:
$ python -m pdb my_script.py
Отладчик приостановит выполнение программы на первой найденной им инструкции. Это удобно для коротких скриптов. Вы можете проверить значения переменных и продолжить выполнение программы построчно.
Вы можете задать контрольные точки в коде, что позволит изучить значения
переменных и другие параметры в конкретный момент выполнения программы. Это
возможно при помощи метода pdb.set_trace()
. Вот живой пример:
import pdb
def make_bread():
pdb.set_trace()
return "У меня нет времени"
print(make_bread())
Попробуйте запустить этот код. Отладчик откроется сразу после запуска скрипта. Теперь пришло время познакомиться с несколькими командами отладчика.
c
: продолжить выполнения программыw
: отобразить окружение текущей исполняемой инструкцииa
: отобразить список аргументов текущей функцииs
: исполнить текущую строчку кода и остановиться по возможностиn
: продолжить исполнение программы пока не будет достигнута следующая строка текущей функции или пока функция не завершит свою работу
Разница между n
и s
в том, что вторая команда приостановит исполнение
после вызова функции, а первая только после достижения следующей строки текущей
функции.
Это лишь несколько базовых команд. pdb
также поддерживает проведение
анализа после завершения работы программы. Это также очень удобная возможность.
Я настоятельно советую вам ознакомиться с официальной документацией и изучить
этот инструмент подробнее.