[pyar] Ejecutar un método al finalizar la instanciación
Juan BC
jbc.develop en gmail.com
Lun Jul 12 21:30:22 ART 2010
El 12/07/10 20:37, John Rowland Lenton escribió:
> On Mon, Jul 12, 2010 at 04:25:08PM -0300, Juan BC wrote:
>>
>> agrego: googlee un cacho y todos me mandan a classmethod
>
> si eso es verdad, están "todos" equivocados :)
>
> Fijate en la documentación de __new__:
>
> object.__new__(cls[, ...])
>
> Called to create a new instance of class cls. __new__() is a static
> method (special-cased so you need not declare it as such) that takes
> the class of which an instance was requested as its first
> argument. The remaining arguments are those passed to the object
> constructor expression (the call to the class). The return value of
> __new__() should be the new object instance (usually an instance of
> cls).
>
> si creés que la documentación pueda estar mal, fijate que el super(),
> para un classmethod, se usaría así:
>
> super(A, cls).method(args...)
>
> similar a como se llama para un método común,
>
> super(A, self).method(args...)
>
>
> si todavía no te convencés, hacé
>
>
> class A(object):
> def foo(*a): pass
>
> @classmethod
> def bar(*a): pass
>
> @staticmethod
> def baz(*a): pass
>
> y fijate qué devuelve A.foo, A.bar y A.baz. Comparalo con lo que te da
> el A.__new__ implícito, y con el __new__ con @classmethod y etcétera.
>
> HTH,
>
>
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
Solo decia que todos mis intentos por aprender me resultaban en
busquedas infructuosas... ponia "staticmethod python"en google y me
salian cosas sobre classmethod. no que alguno este equivocado o no..
sino que no me salian las busquedas como yo queria
More information about the pyar
mailing list