python子类

2024-05-19 01:48:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我现在有一个叫做多项式的类,初始化如下:

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

我通过把键变成指数来创建多项式 关联值是系数。要创建此类的实例,请按如下方式输入:

d1 = Polynomial((5,1), (3,-4), (2,10))

这使得一本字典如此:

{2: 10, 3: -4, 5: 1}

现在,我要创建一个多项式类的子类,称为二次类。我想在二次类构造器中调用多项式类构造器,但是我不太确定如何这样做。我试过的是:

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

但我有错误,有人有什么建议吗?当我调用多项式类构造函数时,我觉得我使用的参数不正确。


Tags: 实例selfinitdef方式指数dictd1
2条回答

你可能想要

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

您还应该使用^{},而不是直接使用构造函数。

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

相关问题 更多 >

    热门问题