python子类
我现在有一个叫做多项式的类,初始化如下:python子类,python,inheritance,subclass,quadratic,Python,Inheritance,Subclass,Quadratic,我现在有一个叫做多项式的类,初始化如下: def __init__(self, *termpairs): self.termdict = dict(termpairs) 我通过使键成为指数和 相关值是系数。要创建此类的实例,请输入以下内容: d1 = Polynomial((5,1), (3,-4), (2,10)) 这使得字典是这样的: {2: 10, 3: -4, 5: 1} 现在,我想创建多项式类的一个子类,称为二次型。我想在二次类构造函数中调用多项式类构造函数,但是我不太
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])
但我有错误,有人有什么建议吗?我觉得调用多项式类构造函数时使用了错误的参数 你可能想要
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])
谢谢,这很有效,我只是把数字放错地方了。你能详细解释一下为什么这样更好吗?明白了。有关更多信息,请参阅本文: