我目前有一个叫做Polynomial的类,初始化看起来像这样:

def __init__(self, *termpairs):
    self.termdict = dict(termpairs)

我通过使键成为指数来创建多项式
相关值是系数。要创建此类的实例,请输入以下内容:
d1 = Polynomial((5,1), (3,-4), (2,10))

这使得字典像这样:
{2: 10, 3: -4, 5: 1}

现在,我想创建一个称为Quadratic的多项式类的子类。我想在Quadratic类构造函数中调用Polynomial类构造函数,但是我不确定如何做到这一点。我试过的是:
class Quadratic(Polynomial):
def __init__(self, quadratic, linear, constant):
    Polynomial.__init__(self, quadratic[2], linear[1], constant[0])

但我遇到错误,有人有任何提示吗?当我调用多项式类构造函数时,感觉好像使用了不正确的参数。

最佳答案

你可能想要

class Quadratic(Polynomial):
    def __init__(self, quadratic, linear, constant):
        Polynomial.__init__(self, (2, quadratic), (1, linear), (0, constant))

关于python子类,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8290323/

10-09 09:34