[Python-Dev] 'hasattr' is broken by design

Benjamin Peterson benjamin at python.org
Tue Aug 24 16:26:09 CEST 2010


2010/8/24 P.J. Eby <pje at telecommunity.com>:
> 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.


-- 
Regards,
Benjamin


More information about the Python-Dev mailing list