подклассы python

В настоящее время у меня есть класс Polynomial. Инициализация выглядит так:

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

Я создаю многочлен, создавая ключи, причем показатели и соответствующие значения являются коэффициентами. Чтобы создать экземпляр этого класса, введите следующее:

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

который делает словарь следующим:

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

Теперь я хочу создать подкласс класса Polynomial под названием Quadratic. Я хочу вызвать конструктор класса Polynomial в конструкторе класса Quadratic, однако я не совсем уверен, как это сделать. Я пробовал:

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

но я получаю ошибки, у кого есть какие-то подсказки? Я чувствую, что я использую неправильные параметры, когда я вызываю конструктор класса Polynomial.

2 Solutions collect form web for “подклассы python”

Вы, вероятно, хотите

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

Вы также должны использовать super() вместо прямого использования конструктора.

 class Quadratic(Polynomial): def __init__(self, quadratic, linear, constant): super(Quadratic, self).__init__(quadratic[2], linear[1], constant[0]) 
 
Interesting Posts for Van-Lav

Пример ctypes обертывает «MessageBoxA» пример не работал в python33

Является ли False == 0 и True == 1 в Python частью реализации или гарантируется ли это языком?

как генерировать числа с учетом их основных факторов, но с неизвестными показателями?

Механизм Python для работы в Токио

Неожиданный аргумент ключевого слова при использовании ** kwargs в конструкторе

Преобразовать символы ASCII в латинские буквы Unicode FULLWIDTH в Python?

Python и Intellisense

Java-эквивалент Python 'in' – для тестирования набора членов?

Аварийный сбой сервера неожиданно во время запуска django

Есть ли способ сделать цикл «for» в python удвоить значение моего индекса после каждой итерации?

Интерполяция и экстраполяция случайно рассеянных данных в единую сетку в 3D

Python Eve – отношение встроенных данных запроса

Python – Как преобразовать «дескриптор уровня ОС в открытый файл» в файл?

Python "SyntaxError: не-ASCII-символ '\ xe2' в файле"

Оптимизация функции разделения

Python - лучший язык программирования в мире.