La création de dictionnaires avec des clés en double n'est pas prise en charge nativement dans Python. Les dictionnaires, de par leur conception, associent des clés uniques aux valeurs correspondantes.
Cependant, vous pouvez utiliser certaines techniques pour remédier à cette limitation. Une approche consiste à stocker des listes ou des ensembles dans le dictionnaire.
Les dictionnaires par défaut, importés du module collections, sont des dictionnaires qui renvoient une valeur par défaut pour les clés inexistantes. Vous pouvez initialiser un dictionnaire par défaut pour stocker des listes ou des ensembles, vous permettant d'associer plusieurs valeurs à la même clé :
from collections import defaultdict data_dict = defaultdict(list)
Pour stocker les valeurs associées à une clé, ajoutez-les à la liste dans le dictionnaire par défaut :
regNumber = "ABC234" details = ("Fred Greenside", "2345", "AgHort_Parking") data_dict[regNumber].append(details)
Voici une version modifiée de votre code, en utilisant un dictionnaire par défaut pour stocker les numéros d'enregistrement et leurs données associées :
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)
Ce code créera un dictionnaire où les numéros d'enregistrement sont des clés, et chaque clé correspond à une liste de valeurs associées.
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!