[pyar] Optimizacion vs (codigo limpio y generico)
Facundo Batista
facundobatista en gmail.com
Mie Abr 23 08:29:35 ART 2014
2014-04-23 7:37 GMT-03:00 Pedro Jose Pezzarini <jose2190 en gmail.com>:
> Necesito que mi objeto pueda variar con el tiempo en sus atributos, pero
> quiero seguir utilizando accessor y mutators de la misma forma, similar a
>
> myobject.accessor(attributeName)
> myobject.mutator(attributeName, value)
A ver, vayamos de lo simple, y tratemos de solucionar algún caso
particular si aparece.
Entonces, vos tenés un objeto genérico:
Python 3.3.2+ (default, Feb 28 2014, 00:53:38)
>>> class C:
... """Objeto genérico."""
...
>>> c = C()
Al cual le querés agregar atributos dinámicamente, y accederlos:
>>> c.foo = 3
>>> c.foo
3
Aunque quizás tengas el *nombre* del atributo, y por eso quieras usar
la forma que indicaste arriba; podés hacer:
>>> setattr(c, 'bar', 5)
>>> getattr(c, 'bar')
5
Si todavía querés la forma de "objeto.método(...)", podés hacer esto
(pero me parece rebuscado):
>>> c.__setattr__('baz', 7)
>>> c.__getattribute__('baz')
7
LLAP.
--
. Facundo
Blog: http://www.taniquetil.com.ar/plog/
PyAr: http://www.python.org/ar/
Twitter: @facundobatista
More information about the pyar
mailing list