On Wed, 13 Jan 2010 20:15:21 -0800
"Guilherme P. de Freitas" <[email protected]> wrote:
> Ok, I got something that seems to work for me. Any comments are welcome.
>
>
> class Member(object):
> def __init__(self):
> pass
>
>
> class Body(object):
> def __init__(self):
> self.members = []
>
> def __setattr__(self, obj, value):
> if isinstance(value, Member):
> self.members.append(obj)
> object.__setattr__(self, obj, value)
> else:
> object.__setattr__(self, obj, value)
>
> def __delattr__(self, obj):
> if isinstance(getattr(self, obj), Member):
> self.members.remove(obj)
> object.__delattr__(self, obj)
> else:
> object.__delattr__(self, obj)
Seems perfectly ok to me, except for if...else constructs in place of simple
if's: an optional statement is added in case obj is of type Member; this is not
an alternative.
if isinstance(value, Member):
self.members.append(obj)
object.__setattr__(self, obj, value) # in both cases
Same for __delattr__, indeed.
Denis
________________________________
la vita e estrany
http://spir.wikidot.com/
_______________________________________________
Tutor maillist - [email protected]
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor