2010/8/24 R. David Murray firstname.lastname@example.org:
On Tue, 24 Aug 2010 09:26:09 -0500, Benjamin Peterson email@example.com wrote:
2010/8/24 P.J. Eby firstname.lastname@example.org:
At 03:37 PM 8/24/2010 +0200, Hrvoje Niksic wrote:
a) a "business" case of throwing anything other than AttributeError from __getattr__ and friends is almost certainly a bug waiting to happen, and
FYI, best practice for __getattr__ is generally to bail with an AttributeError as soon as you see double underscores in the name, unless you intend to support special attributes.
Unless you're in an old-style class, you shouldn't get an double underscore methods in __getattr__ (or __getattribute__). If you do, it's a bug.
Benjamin, I remember you fixing various special method lookups, so just for clarity's sake, which versions of Python does your statement apply to?
2.7, 3.1, and 3.2 should all be good.