在python中,每当编写用户定义的异常时,都必须从Exception类扩展它。
我的问题是为什么我们不能从作为异常层次结构的父类(super class)的BaseException扩展它,而Exception也是BaseException的子类。

最佳答案

BaseException包括诸如KeyboardInterruptSystemExit之类的东西,它们使用异常机制,但是大多数人不应该捕捉到。如果您熟悉它,它类似于Java中的Throwable。直接从BaseException派生的事物通常旨在在执行finally块和上下文管理器__exit__方法以释放资源时关闭系统。

09-25 21:04