Ответ
pdb (Python Debugger) — это встроенный в Python интерактивный отладчик исходного кода. Он позволяет приостанавливать выполнение программы в определённой точке, чтобы проанализировать её состояние, проверить значения переменных и пошагово отследить логику работы.
Основные цели использования:
- Поиск и исправление ошибок (багов): Анализ состояния программы в момент сбоя.
- Понимание работы чужого кода: Пошаговое выполнение для изучения логики.
- Проверка гипотез: Интерактивное выполнение команд в контексте работающей программы.
Как использовать:
Самый простой способ — вставить import pdb; pdb.set_trace() в то место кода, где нужно остановиться.
import pdb
def calculate_total(price, quantity):
discount = 0.1
total_before_discount = price * quantity
# Устанавливаем точку останова здесь, чтобы проверить переменные
pdb.set_trace()
final_price = total_before_discount * (1 - discount)
return final_price
calculate_total(150, 3)
При запуске этого кода выполнение остановится, и в терминале появится интерактивная консоль (Pdb). В ней можно использовать команды:
n(next) — выполнить следующую строку кода.s(step) — зайти внутрь вызываемой функции.c(continue) — продолжить выполнение до следующей точки останова или до конца программы.p <переменная>(print) — напечатать значение переменной (например,p total_before_discount).l(list) — показать участок кода вокруг текущей строки.q(quit) — завершить сессию отладки.