Python 3.x 为什么在自定义异常中有一个super()
我已经看到过很多例子,其中自定义异常是通过以下两种方式定义的:Python 3.x 为什么在自定义异常中有一个super(),python-3.x,exception,Python 3.x,Exception,我已经看到过很多例子,其中自定义异常是通过以下两种方式定义的: E1级(例外): 通过 E2类(例外情况): 定义初始化(self,msg): 超级()。\uuuuu初始化(msg) 为什么使用第二种方法?我看到两种方法都会产生相同的结果: e1=e2=None >>> >>>尝试: ... 提升E1(“E1已提升”) ... 例外情况除外,如e: ... e1=e ... >>> >>>尝试: ... 升起E2('升起E2') ... 例外情况除外,如e: ..
E1级(例外):
通过
E2类(例外情况):
定义初始化(self,msg):
超级()。\uuuuu初始化(msg)
为什么使用第二种方法?我看到两种方法都会产生相同的结果:
e1=e2=None
>>>
>>>尝试:
... 提升E1(“E1已提升”)
... 例外情况除外,如e:
... e1=e
...
>>>
>>>尝试:
... 升起E2('升起E2')
... 例外情况除外,如e:
... e2=e
...
>>>
>>>e1
E1('E1被提升')
>>>
>>>e2
E2(“E2已被提出”)
>>>
>>>
>>>str(e1)
“E1被提出”
>>>str(e2)
“E2被提出”
我错过了什么