Home > Backend Development > Python Tutorial > How Can I Create a Python Dictionary with Duplicate Keys?

How Can I Create a Python Dictionary with Duplicate Keys?

Susan Sarandon
Release: 2024-12-30 17:10:09
Original
398 people have browsed it

How Can I Create a Python Dictionary with Duplicate Keys?

Creating Dictionaries with Duplicate Keys in Python

Many data structures in programming languages, such as dictionaries, do not support duplicate keys. However, there are ways to work around this limitation in Python.

Consider the following scenario where you have a text file containing duplicate car registration numbers with different values:

EDF768, Bill Meyer, 2456, Vet_Parking
TY5678, Jane Miller, 8987, AgHort_Parking
GEF123, Jill Black, 3456, Creche_Parking
ABC234, Fred Greenside, 2345, AgHort_Parking
GH7682, Clara Hill, 7689, AgHort_Parking
JU9807, Jacky Blair, 7867, Vet_Parking
KLOI98, Martha Miller, 4563, Vet_Parking
ADF645, Cloe Freckle, 6789, Vet_Parking
DF7800, Jacko Frizzle, 4532, Creche_Parking
WER546, Olga Grey, 9898, Creche_Parking
HUY768, Wilbur Matty, 8912, Creche_Parking
EDF768, Jenny Meyer, 9987, Vet_Parking
TY5678, Jo King, 8987, AgHort_Parking
JU9807, Mike Green, 3212, Vet_Parking
Copy after login

The goal is to create a dictionary using the registration numbers as keys and the data (excluding the registration number) as values. However, traditional dictionaries in Python will overwrite the old value when duplicates are encountered.

Using defaultdict for Duplicate Keys

One solution is to use the defaultdict from the collections library, which allows us to store lists or sets of values associated with a key.

from collections import defaultdict

data_dict = defaultdict(list)
Copy after login

Instead of setting a single value for a key, we append the new value to the list associated with that key:

data_dict[regNumber].append(details)
Copy after login

This way, the dictionary will contain lists of values for duplicate keys, effectively allowing multiple values to be associated with the same key.

The above is the detailed content of How Can I Create a Python Dictionary with Duplicate Keys?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template