异常签名

use*_*654 6 python python-2.7

class Exceptionpython 2.x 中的签名是什么?

我希望对它进行子类化并添加我自己的参数,同时也正确调用super.

以下代码有效:

class FooError(Exception):
    def __init__(self, msg, x):
        super(FooError, self).__init__(msg)
        self.x = x
Run Code Online (Sandbox Code Playgroud)

但是,是否有一些文档或参考资料? pydoc Exception没有帮助。文档也不是:thisthis

roi*_*ppi 3

你那里有的都很好。交替,

class FooError(Exception):
    def __init__(self, msg, x):
        Exception.__init__(self, msg)
        self.x = x
Run Code Online (Sandbox Code Playgroud)

文档来看:

派生类中的重写方法实际上可能想要扩展而不是简单地替换同名的基类方法。有一个简单的方法可以直接调用基类方法:只需调用 BaseClassName.methodname(self,arguments) 即可。这有时对客户也很有用。(请注意,仅当基类可在全局范围内作为 BaseClassName 访问时,这才有效。)