例えば、結果を得るための方法をGET、setメソッドを使用してデータ機能を設定する一般的な工場:
1 からコレクションをインポートnamedtuple 2つの 3 クラス:ノード(オブジェクト) 4 デフ __init__ (自己、getIp): 5 self.nodes = なし 6 self.node = なし 7 self.getIp = getIp 8 9 デフsetNodes(自己、ノード)。 10 self.nodesの= ノード 11 12 DEF getNode(自己): 13 用 I でself.nodes: 14 であれば i.ip == self.getIp。 15 self.node = I 16 休憩 17 戻りself.node 18 19 なら __name__ == " __main__ " : 20 myOpt = namedtuple(' ノード'、' IPポートユーザー' ) 21個の ノード= [ 22 myOpt(' 192.168.1.1 '、22、' ゲスト' )、 23 myOpt(' 192.168.1.2 '、22、'ゲスト' )、 24 ] 25 MYNODE =ノード(' 192.168.1.1 」) 26 myNode.setNodes(ノード) 27 プリント(myNode.getNode())
両方の取得および設定方法は、より多くのクラスのセットを取得関数法として、互いに独立して、さらなる欠点に対応しない、読み取りに助長されていません
プロパティ:
1 からコレクションをインポートnamedtuple 2つの 3 クラス:ノード(オブジェクト) 4 デフ __init__ (自己、getIp): 5 self.nodes = なし 6 self.node = なし 7 self.getIp = getIp 8 9 @property 10 DEF getNodes(自己) : 11 のために私にself.nodes: 12 であれば == i.ip :self.getIp 13 self.node = I 14 ブレーク 15 リターンself.node 16 17 getNodes.setter @ 18 DEF getNodes(自ノード): 19 self.nodes =のノード 20 21 なら __name__ == " __main__ " : 22 myOpt = namedtuple(' ノード'、' IPポートユーザー' ) 23個の ノード= [ 24 myOpt(' 192.168.1.1 '、22、' ゲスト' )、 25 myOpt(' 192.168.1.2 '、22、' ゲスト' )、 26 ] 27 MYNODE =ノード(' 192.168.1.1 ' ) 28 myNode.getNodes =のノード 29 プリント(myNode.getNodes)
設定と同じ方法で対応するメソッドの名前、コールの同じ設定データの取得結果およびメソッド名を取得します