ホームページ >バックエンド開発 >Python チュートリアル >Python 辞書に重複キーを保存するにはどうすればよいですか?

Python 辞書に重複キーを保存するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-21 09:42:15412ブラウズ

How Can I Store Duplicate Keys in a Python Dictionary?

Python 辞書への重複キーの保存

重複キーを使用した辞書の作成は、Python ではネイティブにサポートされていません。辞書は、仕様上、一意のキーを対応する値に関連付けます。

ただし、特定の手法を使用して、この制限に対処できます。 1 つの方法は、リストまたはセットを辞書内に保存することです。

デフォルトの辞書の使用

コレクション モジュールからインポートされたデフォルトの辞書は、存在しないキーのデフォルト値を返す辞書です。デフォルトの辞書を初期化してリストまたはセットを保存すると、複数の値を同じキーに関連付けることができます。

from collections import defaultdict

data_dict = defaultdict(list)

デフォルトの辞書項目の操作

キーに関連付けられた値を保存するには、これらをデフォルトの辞書内のリストに追加します:

regNumber = "ABC234"
details = ("Fred Greenside", "2345", "AgHort_Parking")
data_dict[regNumber].append(details)

コード例

これはコードの修正バージョン。デフォルトの辞書を使用して、登録番号とその関連データを保存します。

from collections import defaultdict

data_dict = defaultdict(list)

with open("ParkingData_Part3.txt") as file:
    data_list = [lines.split(",") for lines in file.readlines()]

for line in data_list:
    regNumber = line[0]
    name = line[1]
    phoneExtn = line[2]
    carpark = line[3].strip()
    details = (name, phoneExtn, carpark)
    data_dict[regNumber].append(details)

print(data_dict)

このコードは、登録番号がキーであり、各キーが関連する値のリストにマップされる辞書を作成します。 .

以上がPython 辞書に重複キーを保存するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。