Leif K-Brooks wrote: > danielx wrote: > > This is still a little bit of magic, which gets me thinking again about > > the stuff I self-censored. Since the dot syntax does something special > > and unexpected in my case, why not use some more dot-magic to implement > > privates? Privates don't have to be entirely absent from Klass.__dict__ > > (which would make Python not introspective); they can just be invisible > > when using the dot-syntax. > > You can do this now, kind of: > > >>> class Foo(object): > ... x = property() > ... def doStuffWithX(self): > ... self.__dict__['x'] = 123 > ... print self.__dict__['x'] > ... > >>> bar = Foo() > >>> bar.doStuffWithX() > 123 > >>> bar.x > Traceback (most recent call last): > File "<stdin>", line 1, in ? > AttributeError: unreadable attribute > > If you're proposing that self.x and bar.x should give different results, > then that's quite a bit more magic than property() and methods use. They
Yes, I had not considered that very carefully... > both use the descriptor API; for more information on that, read > <http://python.org/download/releases/2.2.3/descrintro/>. Let me finish reading that before I get back to your point. -- http://mail.python.org/mailman/listinfo/python-list