Отладка
Отладка относится к числу навыков, овладев которыми, вы значительно продвинете свои навыки отслеживания багов в коде. Большинство новичков пренебрежительно относятся к важности отладчика 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 также поддерживает проведение анализа после завершения работы программы. Это также очень удобная возможность. Я настоятельно советую вам ознакомиться с официальной документацией и изучить этот инструмент подробнее.
Last updated