Почему pdb отображает "* * * пустой или комментарий", Когда я пытаюсь установить перерыв?
Я работаю с моим приложением Django. По какой-то причине элемент списка присваивается неправильно.
Я пытаюсь установить разрыв там, где, как мне кажется, происходит ошибка. (строка 20)
Я вызываю pdb с этой строкой кода:
import pdb; pdb.set_trace()
Однако внутри кода я не могу установить разрыв.
(Pdb) b 20
*** Blank or comment
(Pdb) break 20
*** Blank or comment `
Что я делаю не так?
1 ответ:
Pdb говорит вам, что строка 20 файла, в котором вы находитесь, не содержит кода; она либо пуста, либо просто содержит комментарий. Такая линия никогда не будет фактически выполнена, поэтому точка останова не может быть установлена на ней.
Используйте команду 'list' для просмотра кода файла, в котором вы находитесь в данный момент ('help list' для получения подробной информации об этой команде), а затем установите точки останова в строках, содержащих исполняемый код.
Вы также можете использовать команду "where" для просмотра кадра стека, так как вы можете не быть в правильный файл, потому что вы не смотрите на уровень кадра стека, где вы думаете, что находитесь. Используйте "вверх" и "вниз", чтобы перейти на уровень стека, где вы хотите выполнить отладку.