3.3.2.1 More attribute access for new-style classes

The following methods only apply to new-style classes.

__getattribute__( self, name)
Called unconditionally to implement attribute accesses for instances of the class. If the class also defines __getattr__, it will never be called (unless called explicitly). This method should return the (computed) attribute value or raise an AttributeError exception. In order to avoid infinite recursion in this method, its implementation should always call the base class method with the same name to access any attributes it needs, for example, "object.__getattribute__(self, name)".

See About this document... for information on suggesting changes.