如何让PyCharm在我的异常处中断

23 投票
1 回答
4164 浏览
提问于 2025-04-16 21:13

可能重复的问题:
在PyCharm中遇到未处理的异常时中断

我刚开始学习Python,正在用PyCharm 1.5调试我的第一个Python程序。
我希望调试器在我的代码出现异常时能中断(只针对我的代码)。

目前的情况是这样的:我使用(Ctrl + Shift + F8)对话框来配置调试器。如果我把暂停所有 = true所有异常 = true设置上,那么调试器就会频繁中断,比如它会在PyCharm 1.5.1\helpers\pydev\pydevd.py的某个地方中断,这让我每次都很烦恼。而如果我设置其他选项,调试器即使在我的代码出现异常时也不会中断。

附注:顺便说一下,如果我跳过在PyCharm 1.5.1\helpers\pydev\pydevd.py中的中断,程序执行就会继续,没有明显的错误。所以我不明白为什么会中断。

1 个回答

3

区分你自己写的错误和库里产生的错误的一种方法是,让你的错误从一个自定义的类继承。例如,如果你的模块叫做 Foo,你可以这样做:

class FooException(Exception):
   pass

然后,让更具体的错误从这个类继承:

class MyMathException(FooException):
   # etc.

接着,在 PyCharm 中,不要选择 所有错误,而是把 FooException 加入到你想要中断的错误列表里。

撰写回答