为什么我们不应该扩展BaseException类来创建自己的Exception而不是在Python2.7中扩展Exception类?
答案 0 :(得分:3)
我们来看看Exception hierarchy。
源自BaseException
的唯一例外是SystemExit
,KeyboardInterrupt
和GeneratorExit
。他们是不应该偶然发现的例外。这就是他们与众不同的原因。
异常继承自BaseException,以免被捕获Exception的代码意外捕获,从而阻止解释器退出。
这也是在不指定异常类型的情况下不应使用try: ... except: ...
的原因。