Сообщить об ошибке.

Функция set_trace() модуля pdb в Python

Жесткая установка точки останова в коде

Синтаксис:

import pdb

pdb.set_trace(*, header=None)

Параметры:

  • header=None - заголовок, выводиться перед отладкой.

Возвращаемое значение:

  • нет.

Описание:

Функция set_trace() модуля pdb вводит отладчик в кадр стека вызова.

Это полезно для жесткой установки точки останова в заданной точке программы, даже если код не отлаживается иначе, Например, когда утверждение не выполнено.

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

Смотрите встроенную функцию breakpoint().

Примеры использования:

# test.py
import pdb

class MyClass():
    def __init__(self, loops):
        self.count = loops
 
    def start(self):
        for i in range(self.count):      
            pdb.set_trace(header="def start -> print")
            print(i)
        return
 
if __name__ == '__main__':
    MyClass(5).start()

Результат запуска:

$ python3 test.py 
def start -> print
> /home/docs-python/test.py(10)start()
-> print(i)
(Pdb) c
0
def start -> print
> /home/docs-python/test.py(9)start()
-> pdb.set_trace(header="def start -> print")
(Pdb)