On 18/01/13 11:11, Jose Amoreira wrote:

Suppose I have a list l_obj of similar objects. Is there any way I can
generate a list l_prp of references to a given property of those objects
in such a way that, if change the value of one element in l_prp, the
corresponding object in l_obj gets its property updated, and vice-versa?

Not easily, and for very good reason, it breaks one of the fundamental principles of OOP. Objects should manage their own data and clients should manage the objects.

So getting a list of the prp values is fine. Trying to modify those values without going through the object is asking for trouble and creating a nightmare for debugging. So unless you have a very specific reason to do so just modify the objects prp through the object.

As expected, changes in l_prp do not change the properties of the
elements in l_obj, neither do changes in l_obj's element's properties
change the values in l_prp.

As you say, it's as expected and very worrying if it did otherwise!

Is there a simple way to implement such connections?

It's difficult by intent. It's to save you from yourself.

Is there a good reason to want to do such a thing?


--
Alan G
Author of the Learn to Program web site
http://www.alan-g.me.uk/

_______________________________________________
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor

Reply via email to