2015-11-13 4 views
2

При отладке в pdb я обнаружил ошибку и, таким образом, изменил код.После изменения кода, как начать отладку без перезагрузки pdb?

Теперь я хотел бы начать с отладки. Могу ли я сделать это, не выходя из pdb, так что мне не нужно указывать аргументы командной строки для моего сценария python? Или мне нужно выйти из pdb, а затем снова ввести его?

ответ

1

Вы можете использовать команду pdb run, которая останавливает существующий процесс и запускает новый.

Вы по-прежнему должны указывать аргументы командной строки при запуске run, однако из docs: «Сохранены истории, точки останова, действия и параметры отладчика».

Если возникнуть проблема с повторным заданием аргументов командной строки, вы можете сначала напечатать ' '.join(sys.argv), а затем скопировать его в команду run (конечно, возможно, потребуется дополнительное экранирование оболочки).

+0

Выполняет перезагрузку и запускает измененный код вместо старого кода? – Tim

+0

'restart' не принимает аргументы, не так ли? – Tim

+0

@Tim docs говорят, что «перезагрузка» является псевдонимом «run», то есть – shx2

Смежные вопросы