python y referencias a métodos
Arnau Sanchez
arnau en ehas.org
Mie Feb 14 21:42:29 CET 2007
camontuyu escribió:
> Tengo una clase.
>
> class A:
> nombre = ""
> apellidos = ""
>
> ins = A()
>
> ahora tengo una diccionario que debería guarda referencia a las
> variables de clase de la instacia en concreto
>
> accion = {'nombre': ins.nombre, 'apellidos': ins.apellidos}
>
> para luego hacer:
>
> accion['nombre'] = "Pepito Perez"
> print ins.nombre
> # Pepito Perez
Uf, ¿no lo estás complicando innecesariamente creando un diccionario y una
instancia que contienen la misma información? yo me quedaría sólo con uno de
ellos, en este caso con la instancia. No se recomienda usar diccionarios para
este tipo de estructuras, donde las claves son fijas y conocidas. Duele menos a
la vista un registro.campo que registro["campo"].
A veces, es cierto, es necesario acceder a la estructura como si ésta fuera un
diccionario (para extraer todos sus campos, por ejemplo). De las muchas
alternativas para implementarlo, por su sencillez me quedaría con los Structs
que propone P.Norvig en sus IAQ sobre Python:
http://norvig.com/python-iaq.html
(pregunta: "Is there a similar shortcut for objects?" y siguientes)
Todo esto dicho sin saber exactamente qué quieres hacer, quizá no te sirva.
Más información sobre la lista de distribución Python-es