Как сделать перерыв pycharm в моих исключениях

Возможный дубликат:
перерыв в необработанном исключении в pycharm< /а>

Я новичок в Python и пытаюсь отлаживать свою первую программу на Python, используя PyCharm 1.5. Я хочу, чтобы отладчик прерывался, когда в моем коде возникает исключение (и только в моем).

На данный момент ситуация следующая: я использую диалоговое окно (Ctrl + Shift + F8) для настройки отладчика, и если я устанавливаю Приостановить все = true и Все исключения = true, тогда отладчик ломается слишком часто, например, он ломается где-то внутри PyCharm 1.5.1\helpers\pydev\pydevd.py, который раздражает каждый раз пропускать. И если я установлю какие-либо другие параметры, отладчик не сломается, даже если в моем коде возникнет исключение.

PS: Кстати, если я просто пропущу перерывы в PyCharm 1.5.1\helpers\pydev\pydevd.py, то выполнение продолжится без видимых ошибок. Так что я не понимаю, почему он вообще ломается


person Alex Ilyin    schedule 10.07.2011    source источник
comment
Если вы не получили ответа здесь, возможно, стоит поднять вопрос в системе отслеживания проблем Pycharm. Похоже, это может быть ошибка. Pycharm, вероятно, не должен ломать исключения в своем собственном коде.   -  person Peter Graham    schedule 12.07.2011
comment
Хорошо, спасибо за совет, если найду, отпишусь   -  person Alex Ilyin    schedule 12.07.2011
comment
это работало, когда вы добавляли точку отладчика в любом месте?   -  person Nazar Hussain    schedule 25.08.2011


Ответы (1)


Один из способов отличить ваши исключения от исключений, исходящих из библиотеки, - это получить их от пользовательского класса, например. если ваш модуль называется Foo, вы могли бы

class FooException(Exception):
   pass

и иметь более конкретные исключения, вытекающие из этого:

class MyMathException(FooException):
   # etc.

Затем в PyCharm вместо включения All Exceptions добавьте FooException в список исключений, на которые нужно наткнуться.

person UncleZeiv    schedule 09.09.2011
comment
Я согласен с тем, что вы сказали, но обычно не я делаю исключение - person Alex Ilyin; 12.09.2011
comment
Ой. Теперь я запутался, вы сказали, когда в моем коде возникает исключение (и только в моем). - person UncleZeiv; 12.09.2011
comment
Да, например, если я вызываю отсутствующий метод, то в моем коде возникает исключение, но это не я выбрасываю исключение - person Alex Ilyin; 13.09.2011