Maison > développement back-end > Tutoriel Python > Comment puis-je créer un dictionnaire Python avec des clés en double ?

Comment puis-je créer un dictionnaire Python avec des clés en double ?

Susan Sarandon
Libérer: 2024-12-30 17:10:09
original
398 Les gens l'ont consulté

How Can I Create a Python Dictionary with Duplicate Keys?

Création de dictionnaires avec des clés en double en Python

De nombreuses structures de données dans les langages de programmation, tels que les dictionnaires, ne prennent pas en charge les clés en double. Cependant, il existe des moyens de contourner cette limitation en Python.

Considérez le scénario suivant dans lequel vous disposez d'un fichier texte contenant des numéros d'immatriculation de voiture en double avec des valeurs différentes :

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
Copier après la connexion

L'objectif est pour créer un dictionnaire en utilisant les numéros d'enregistrement comme clés et les données (hors numéro d'enregistrement) comme valeurs. Cependant, les dictionnaires traditionnels en Python écraseront l'ancienne valeur lorsque des doublons sont rencontrés.

Utiliser defaultdict pour les clés en double

Une solution consiste à utiliser le defaultdict de la bibliothèque de collections , qui nous permet de stocker des listes ou des ensembles de valeurs associés à une clé.

from collections import defaultdict

data_dict = defaultdict(list)
Copier après la connexion

Au lieu de définir une valeur unique pour une clé, nous ajoutez la nouvelle valeur à la liste associée à cette clé :

data_dict[regNumber].append(details)
Copier après la connexion

De cette façon, le dictionnaire contiendra des listes de valeurs pour les clés en double, permettant ainsi d'associer plusieurs valeurs à la même clé.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal