3タプルから特定の要素を抽出します。私がキーを知っているなら、3タプルから特定の要素を取得するにはどうすればよいですか?例えば、私はid
を与えられ、それは与えられたIP
に対応します。辞書を考える辞書
ありがとうございます。
3タプルから特定の要素を抽出します。私がキーを知っているなら、3タプルから特定の要素を取得するにはどうすればよいですか?例えば、私はid
を与えられ、それは与えられたIP
に対応します。辞書を考える辞書
ありがとうございます。
まず、あなたはその全体のタプルを取得:
self.mapping["192.168.1.1"]
次に、あなただけの第二の要素を取得します:
self.mapping["192.168.1.1"][1]
Pythonの辞書やタプルは、ブラケット表記を使用して参照されています。辞書値は、対応するキーを使用して参照されます。タプル内の項目は、0から始まる番号を使用してインデックスで参照されます(つまり、タプルの最初の項目はインデックス0、2番目の1など)。あなたはインデックス使用してタプル項目を参照することができ
self.mapping['IP address']
:
あなたのケースでは、あなたはIPアドレスのキーを使用して、辞書の値を参照することができる2つを組み合わせることにより
my_tuple[1]
を、あなたは特定を参照することができます辞書値タプルの項目。あなたが使用するので、あなたの例では、IDは、インデックス1の第二の値である:
self.mapping['IP address'][1]
あなたが適切にニシキヘビの方法であなたの辞書からデータを解凍するget()
メソッドを使用することができます。
mac_addr, c_id, port = self.mapping.get('192.168.1.1', (None, None, None))
それ現在のIPがあなたのdictにない場合には、KeyError
例外を発生させないようにします。
あなたが唯一のidフィールドを抽出したい場合:
_, c_id, _ = self.mapping.get('192.168.1.1', (None, None, None))
'ID = self.mapping [ "192.168.1.1"] [1]' – Selcuk