これら三つの機能は、プロパティを持つオブジェクトまたはメソッドかどうかを決定するためである(この方法はまた、プロパティを呼び出すことができます)
多くの場合、直接コマンドヘッドの機能を書き始めたであることを覚えている..... xx.getattr書かれ、書かれていました。
[23]では:Demoクラス: ...:デフ__init __(自己): ...:self.name = 'sidian' ...:DEF out_name(自己): ...:リターンself.name ... : [24]において DD =デモ():の[24] [25]において:はhasattr(DD、 '名称') OUT [25]:真 [26]で:はhasattr(DD、 'out_name') トゥルー:アウト[26] [27]で:はhasattr(DD '年齢') OUT [27]:偽
、hasatrを紹介返される値はボル、TrueまたはFalseで、オブジェクトが属性を持っているかどうかを判断することです。
[30]中:GETATTR(DD、 '名称') OUT [30]: 'sidian' に[31]:GETATTR(DD 'out_name') OUT [31]。<結合方法Demo.out_nameの<主__ __デモ0x10a4a9290におけるオブジェクト>> [32]において:GETATTR(DD、 'アウト') -------------------------------- ------------------------------------------- はAttributeErrorトレースバック(最新の呼び出し最後) <ipython入力-32 de58a5a0d8df> <モジュール>に ----> 1 GETATTR(DD、 'アウト') [35]では:GETATTR(DD、 'アウト'、 'OK') OUT [35]: 'OK'
そこに名を取得するが、気性が良くありませんが、彼は、オブジェクト、あなたのために直接ダイの性質の中に入ることができなかったときは、三番目のパラメータを追加することができますので、しかし、最初の出力を取得できませんでしたが、次のテストは、GETATTRです三つのパラメータ。
[37]中:SETATTR(BB、 '年齢'、18) [38]で:SETATTR(BB、 '名前'、 'wangba') [39]で:GETATTR(BB、 '年齢') OUT [39]。 18 [40]において:GETATTR(BB、 '名称') OUT [40]: 'wangba'
SETATTRはまた、特定の操作のプロパティを変更することができ、オブジェクトのプロパティに追加することができる比較的簡単です。