[pyar] Herencia en Python
Ezequiel Trapani
etrapani04 en gmail.com
Dom Feb 28 10:40:19 ART 2016
Buenos días,
Estoy haciendo un curso sobre python y tengo una actividad en la que tengo
que aplicar POO y usar herencia. El problema es el siguiente, tengo una
clase X y una clase Y que hereda de X. Cuando defino el constructor de Y,
tengo que llamar al constructor de X. El problema es que me sale el
siguiente error:
Traceback (most recent call last):
File "submission.py", line 64, in __init__
super(self.__class__, self).__init__(name,desired_species)
TypeError: must be type, not classobj
La definición del constructor de la clase Y es la siguiente:
class Y(X):
def __init__(self, name,adress, cellphone):
super(self.__class__, self).__init__(name,adress)
self.cellphone = cellphone
Leyendo en foro detecte que el problema es que la clase X esta definida de
la siguiente manera:
"class X:" y no "class X(object):" Si yo ajusto el programa a la segunda
declaración el problema se resuelve. Sin embargo en el curso que estoy
haciendo yo no puedo modificar la clase X, solo tengo que agregar el código
de la clase Y para resolver el problema. Mi pregunta es existe alguna otra
forma de declarar el constructor de Y, para solucionar el problema?
Desde ya muchas gracias.
Saludos,
Ezequiel
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20160228/24a5581f/attachment.html>
Más información sobre la lista de distribución pyar