Python можно отлаживать без изменения кода - PullRequest
4 голосов
/ 09 марта 2012

Кажется, что отладка кода Python - тривиальная задача, просто вставьте следующие строки для запуска отладчика.

import pdb
pdb.set_trace()

Да, я попробовал это, и это работает очень хорошо. Это достойный отладчик.

Но возможно ли запустить немодифицированную программу на Python, возможно, с указанием текстового файла с указанием местоположения точек останова? Вот как я обычно делаю это на Java или Flash.

Ответы [ 2 ]

7 голосов
/ 09 марта 2012

Сохраните файл с именем .pdbrc в той же папке, что и файл скрипта. Введите информацию о точке останова:

b 3
b 5
b 70
b 89

Запустите ваш скрипт в pdb примерно так:

python -m pdb myscript.py

и pdb подберет и вставит ваши точки останова. К сожалению, при отладке он не сохранит изменения, которые вы внесли в них.

В качестве альтернативы вы можете указать их в первой строке

(Pdb) b 3;;b 5;;b 70;;b 89
6 голосов
/ 09 марта 2012

Как объясняется в документации , вы можете запустить его с:

python -m pdb myscript.py
...