3.4.2.1 新しい形式のクラスのための別の属性アクセス

以下のメソッドは新しい形式のクラス (new-style class) のみに 適用されます。

__getattribute__( self, name)
クラスのインスタンスに対する属性アクセスを実装するために、無条件に 呼び出されます。クラスが __getattr__() も定義している 場合、__getattr__() は 、 __getattribute__()で明示的に呼び出すか、 AttributeError 例外を送出しない限り呼ばれないでしょう。 呼び出されることはありません。このメソッドは (計算された) 属性値を 返すか、AttributeError 例外を送出します。 このメソッドが再帰的に際限なく呼び出されてしまうのを防ぐため、 実装の際には常に、例えば "object.__getattribute__(self, name)" のように基底クラスのメソッドを同じ属性名を使って呼び出し、 必要な属性値全てにアクセスしなければなりません。

ご意見やご指摘をお寄せになりたい方は、 このドキュメントについて... をご覧ください。