Почему pdb отображает «*** Пробел или комментарий», когда я пытаюсь установить разрыв? - PullRequest
4 голосов
/ 05 декабря 2009

Я работаю с моим приложением Django. По какой-то причине элемент списка назначается неправильно.

Я пытаюсь установить перерыв, где я думаю, что ошибка происходит. (строка 20)

Я вызываю pdb с этой строкой кода:

import pdb; pdb.set_trace()

Однако внутри кода я не могу установить Перерыв.

(Pdb) b 20  
*** Blank or comment  
(Pdb) break 20  
*** Blank or comment  `

Что я делаю не так?

1 Ответ

4 голосов
/ 05 декабря 2009

pdb говорит вам, что строка 20 файла, в котором вы находитесь, не содержит кода; он либо пустой, либо просто содержит комментарий. Такая строка фактически никогда не будет выполнена, поэтому на нее нельзя установить точку останова.

Используйте команду «list», чтобы увидеть код файла, в котором вы находитесь («список справки» для подробностей этой команды), а затем установите точки останова в строках, которые включают исполняемый код.

Вы также можете использовать команду 'where', чтобы увидеть фрейм стека, поскольку вы можете оказаться не в нужном файле, потому что вы не смотрите на уровень фрейма стека, где вы думаете. Используйте «вверх» и «вниз», чтобы перейти на уровень стека, на котором вы хотите отлаживать.

...