ホームページ  >  記事  >  バックエンド開発  >  Python でワンキー複数値辞書を実装する方法

Python でワンキー複数値辞書を実装する方法

不言
不言転載
2018-10-11 14:20:534573ブラウズ

この記事の内容は、Python でのワンキー多値辞書の実装に関するもので、一定の参考価値がありますので、困っている方は参考にしていただければ幸いです。

1. 要件

キーを複数の値にマッピングできる単語 (いわゆるワンキー多値辞書)

2. 解決策

辞書は連想コンテナであり、各キーは個別の値にマップされます。キーを複数の値にマップする場合は、これらの複数の値を別のコンテナー (リストまたはセット) に保存する必要があります。

次のように辞書を作成できます:

d={
‘a’:[1,2,3],
'b':[4,5]
}

または次のように作成できます:

d={
'a':{1,2,3},
'b':{4,5}
}

リストを使用するかセットを使用するかは、完全にその目的によって決まります。アプリケーション。要素が挿入された順序を保持したい場合はリストを使用し、重複する要素を削除したい (順序を気にしない) 場合はセットを使用します。

このような辞書を簡単に作成するには、コレクション モジュールでdefaultdictクラスを使用できます。 defaultdict の機能の 1 つは、最初の値が自動的に初期化されるため、要素の追加のみに集中する必要があることです。

from collections import defaultdict
d=defaultdict(list)
d['a'].append(1)
d['a'].append(2)
d['b'].append(4)
print(d)
d=defaultdict(set)
d['a'].add(1)
d['a'].add(2)
d['b'].add(4)
print(d)

結果:

defaultdict(<class &#39;list&#39;>, {'a': [1, 2], 'b': [4]})
defaultdict(<class &#39;set&#39;>, {'a': {1, 2}, 'b': {4}})

以上がPython でワンキー複数値辞書を実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はsegmentfault.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。