-3

我有一个问题,我似乎无法找到解决方案。我有 3 个类AB并且CA作为超类。

class A(object):
    def __str__(self):
        self._general_representation(str)

    def _general_representation(self,to_string):
        (nominal_value, std_dev) = (self._nominal_value, self.std_dev())

    def std_dev(self)
        a = error_components()*something

    def error_components(self):
        return something

class B(A):


class C(B):

我希望类C能够覆盖“祖父母”类的std_dev()and error_components()。我怎样才能做到这一点?我无法更改 A 类和 B 类。在 python 3.3 中有没有办法做到这一点?

4

1 回答 1

3

只需在 C 类上定义它们。函数是在 上查找的self,而不是在定义调用方法的类上。

class C(B):
    def std_dev(self)
        return self.error_components() * something + something_else_again

    def error_components(self):
        return something_entirely_different
于 2012-12-21T15:56:47.950 回答