Как перечислить текущую строку в PDB python?
В отладчике perl, если вы повторно перечисляете сегменты кода, отбираете вас от текущей строки, вы можете вернуться к текущей строке, введя команду .
(точка).
Я не смог найти ничего сопоставимого с помощью модуля PDB python. Если я откажусь от текущей строки и хочу ее снова просмотреть, мне кажется, что я должен либо запомнить номер строки, который в настоящее время выполняется (маловероятно для меня), либо выполнить инструкцию (часто нежелательную).
Я что-то пропустил?
Ответы
Ответ 1
Поздно, но, надеюсь, все же полезно. Сделайте следующий псевдоним:
alias ll u;;d;;l
Затем всякий раз, когда вы печатаете ll
, pdb будет перечислить из текущей позиции. Он работает, поднимаясь по стеку, а затем вниз по стеку, который сбрасывает 'l' для отображения из текущей позиции. (Это не будет работать, если вы находитесь в верхней части трассировки стека.)
Ответ 2
Ну, я не думаю, что в perl-отладчике есть команда, похожая на .
, но вы всегда можете найти текущую строку, используя команду where
/w
. Это покажет вам как текущий (контекстный) фрейм, так и самый последний фрейм, который, как я считаю, вызвал отладчик.
Ответ 3
В Python 3.2 и выше вы можете использовать list .
to reset расположение списка.
Источник: Отслеживание ошибок Python # 4179
Ответ 4
Возможно, вам стоит попробовать ipython
или ipdb
, обертка для pdb
.
ipdb
дает пронумерованные строки, раскрашенный синтаксис, завершение табуляции и многое другое.