クラステスト(オブジェクト): DEF __init__ (セルフ、名): self.name = 名前 。自己__item = なし #------------------------- ------------------------------- @Propertyの #のプロパティメソッド DEFテスト(自己): #静的メソッドは、自己引数を通過しません プリング(" %のS%をSXXX "%(self.name、セルフ。__item )) #------------------------------ -------------------------- Tテスト(= " LBC " ) t.test() 位*** TypeError例外:「NoneType 」オブジェクトは、IS ないコーラブル #呼び出すことはできません #*** 修正: t.test #のプロパティ方法:静的プロパティへの方法、その呼び出しは、括弧を必要としないとき、 メソッドのパラメータは、プロパティを持っている必要がある場合その後、メソッドが同じメソッド名を必要としないかもしれない:(コードの次の部分を追加しますが、提案されている同じメソッド名とプロパティ) @ test.setter DEF テスト(自己、アイテム): 印刷(「項目にSET:」、項目) 。自己__item = //アイテムプライベート変数の目的は、格納された変数の方法は、メソッド変数は、変数のメソッドに渡されている 呼び出し時に割り当て t.test = 「LBC 」 #------ 方法は、直接、デル・削除属性セッターメソッドで定義されている機能、削除手段によってのみ対応する変数にデルデリータを削除することはできません #------ #------------ ---------------------------- -------------例の 便:取得することが可能ユーザー彼らのニーズ、詳細な問い合わせステップを必要とせずに クラスのフライト(オブジェクト): DEF __init__ (セルフ、名): self.flight_name = 名前の DEFのchecking_status(セルフ): 印刷(" フライト状況の確認%S "%のself.flight_name ) リターン 1。 @Property DEF FLIGHT_STATUS(セルフ): ステータス = self.checking_status() IFステータス== 0: 印刷(" フライトキャンセルしまった... " ) のelifのステータス== 1 : 印刷(" フライトが到着している... " ) のelifのステータス== 2 : 印刷(" 飛行が...すでに出発するしました" ) 他: プリント(" フライト状況を確認することができない...、後で確認してください" ) 需要如果修改航班信息: flight_status.setter @ デフFLIGHT_STATUS(自己、ステータス) プリント(" %sは%sに変更しました"%(self.flight_status、ステータス)) F =フライト(" CA980 " ) f.flight_status #f.flight_status = 2 #------ -------------------------------------------------- ----- #完善版 クラスのフライト(オブジェクト): デフ __init__ (自己、名): self.flight_name = 名前の デフchecking_status(自己): プリント(" フライト%sの状態をチェックする"%self.flight_name) リターン 1 @property デフFLIGHT_STATUS(自己): ステータス = self.checking_status() の場合、ステータス== 0: 印刷(" フライトキャンセルしまった... " ) のelifのステータス== 1 : 印刷(" フライトが到着しています... " ) のelifのステータス== 2 : プリント(" 飛行はすでに出発するた... " ) それ以外: 印刷(" フライト状況を確認することができない...、後で確認してください" ) @ flight_status.setter #修改 デフFLIGHT_STATUS(自己、ステータス): status_dic = { :" キャンセル" 、 :" 到着" 、 :" 出発する" } 印刷(" 033 [31 \; 1mHasが033 [0メートルを\にフライト状況を変更する" 、status_dic.get(ステータス)) @ flight_status.deleter #删除 デフFLIGHT_STATUS(自己): 印刷(" ステータスが削除しまった... " ) 、F =フライト(" CA980 " ) f.flight_status f.flight_status = 2 #触发@ flight_status.setter デル f.flight_status #触发@ flight_status.deleter
このコードサンプル参照アレックスのブログ!