I think the point of attrview() and x.[y] and getattr()/setattr() is that these should be usable regardless of whether the object is prepared for such use; they map directly to __getattr__ and __setattr__. If I had to design an object specifically for such dynamic access, sure, I'd implement __getitem__ and friends and the need wouldn't exist. For that specific object. But the use case of general objects is different.
On 2/13/07, Aahz <[EMAIL PROTECTED]> wrote: > On Tue, Feb 13, 2007, Ben North wrote: > > > > I think the "obj.[attr_name]" syntax has the most support. To stop this > > going round in circles for ages, then, I will take this as the winner. > > I'll mention the other contenders in the PEP, including the new > > "visually distinctive" suggestions > > > > [EMAIL PROTECTED] > > obj.[[foo]] > > > > and the "wrapper class" idea of Nick Coghlan: > > > > attrview(obj)[foo] > > For most cases where this is needed, why not just use a mixin class? > That works perfectly well with current Python and doesn't even look > funny: > > obj[foo] = blah > print obj[foo] > > My company makes heavy use of this coding style, we can use obj.foo > whenever appropriate. > -- > Aahz ([EMAIL PROTECTED]) <*> http://www.pythoncraft.com/ > > "I disrespectfully agree." --SJM > _______________________________________________ > Python-Dev mailing list > Python-Dev@python.org > http://mail.python.org/mailman/listinfo/python-dev > Unsubscribe: > http://mail.python.org/mailman/options/python-dev/guido%40python.org > -- --Guido van Rossum (home page: http://www.python.org/~guido/) _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com