[pyar] Duda: @property con __(set|get)attr__

Germán L. Osella Massa gosella en gmail.com
Mie Feb 13 19:52:01 ART 2013


El 13 de febrero de 2013 17:46, Claudio Freire <klaussfreire en gmail.com>escribió:

>
> No, eso invoca al getter cuando se invoca al setter, lo que puede ser
> bastante anti-intuitivo (y dependiendo de lo que haga el setter,
> indeseado)
>

Coincido con vos plenamente pero anti-intuitivo y todo, Python es así:

>>> class foo():
...     @property
...     def bar(self):
...         print("In getter of foo.bar")
...

>>> hasattr(foo(), "bar")
In getter of foo.bar
True

Para evitar este comportamiento, lo más simple que se me ocurrió fue esto:

http://pastebin.com/StBvbQNz

Le quita dinamismo a la cosa pero para este caso, funciona (a esta altura,
usar un decorador de clase después de todo lo otro no me pareció tan
grave... y creo que es más fácil que meterse con una metaclase ;-)

Germán
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20130213/99a9ab99/attachment.html>


More information about the pyar mailing list