Class属性制御

オブジェクトプロパティの設定
:__setattr __(自己、名前、値)
DEF __setattr __(自己、名前、値):
自己.__ dictの__ [名] =値
1つの
2
クエリオブジェクトのプロパティ
__getattr __(自己、名前):このプロパティにアクセスすると、存在しない状態で検索を呼ばれ、対応するインスタンスの属性に
__getattributeの__(自己、名):あなたはプロパティにアクセスするたびに、無限再帰のケースを引き起こす可能性が高く、使用する際は注意が起動され
、詳細なGETATTRをとのgetAttribute
オブジェクトのプロパティを削除
:__delattr __(自己、名前)
の例
クラスのプログラムを(オブジェクト):

デフ__init __(自己、名前、年齢):
self.name =名前
self.age =年齢

__ __getattribute DEF(セルフ、名):
リターンGETATTR(セルフ、名)、無限再帰#の原因となる
#リターン自己.__ dictの__ [名前 ]#の原因無限再帰
リターンスーパー(プログラム、自己).__のgetAttribute __(名)

デフ__setattr __(自己、名前、値):
自己.__ dictの__ [名] =値

デフ__setattr __(自己、年齢、値):
自己.__ dictの__ [年齢] =値

デフ__getattr __(自己、年齢):
リターン・スーパー(プログラム、スーパー).__のgetattr __(年齢)


もし__name__ == '__main__':
P =プログラム( 'マイク'、22)
印刷(p.name)
プリント
(p.age)----------------

おすすめ

転載: www.cnblogs.com/liyanyan665/p/11408546.html