5

1 つのディクショナリ値に割り当てる 2 つのキーを使用してディクショナリを作成しました。たとえば、次のようになります。

my_dict[x, y] = ...
my_dict[a, u] = ...

has_key()次に、x と y のような 2 つの主要な変数に対してメソッドを使用するにはどうすればよいでしょうか。

if my_dict.has_key(x,y) == True:
    Do Something
else:
    Do something else

d は、変数 f および g から呼び出す pdict 値を使用する行列ですが、知っておく必要があるのは、変数名 x、y が pdict のキー値として使用されていることだけです。

4

2 に答える 2

10

dict.has_key()は長い間廃止されてきたため、代わりに演算子を使用する必要がありますin

if (x, y) in my_dict:
    # whatever

辞書には「2 つのキー」がないことに注意してください。おそらくtuple2 つの要素の a をキーとして使用しますが、そのタプルは単一のオブジェクトです。

于 2012-08-06T14:16:24.923 に答える
6

次のようにシーケンスをキーとして使用した場合:

d[1,2] = 3

キーは暗黙的にタプルに変換されます。単一の引数を期待する関数呼び出しでは、タプルを明示的に指定する必要があります。

d.has_key((1,2))
于 2012-08-06T14:14:57.853 に答える