[pyar] Ejecutar un método al finalizar la instanciación
Pablo Ziliani
pablo en kultroom.com
Dom Jul 11 20:40:44 ART 2010
Juan BC wrote:
> hay alguna forma que teniendo unas clases del tipo
>
> Class A(object):
>
> def metodo(self):
> print "WAWAWA"
>
>
> class B(A): pass
>
> se puede hacer algo como
>
> >>> b = B()
> WAWAWA
>
> sin necesidad de definirlo en el constructor de cada subclase?
No teniendo *exactamente* eso, pero hay miles de formas de hacer algo
parecido, dependiendo de qué sea lo que querés hacer o lo que querés
evitar tocar. Por ejemplo:
>>> class A(object):
... def metodo(self):
... print "WAWAWA"
...
>>> class B(A):
... def __init__(self):
... self.metodo()
...
>>> B()
WAWAWA
<__main__.B object at 0x979ba6c>
>>> class C(B): pass
...
>>> C()
WAWAWA
<__main__.C object at 0x979ba6c>
También podés usar metaclasses, tocar el __new__, etc.
More information about the pyar
mailing list