2017-06-16 1 views
-1

Ich möchte alle Vorkommen von zwei Nomen in einem Wörterbuch speichern. Wenn ich folgende Daten habe:Multidimensionales (?) Wörterbuch

"Miss, Universum", "Miss, Marple"; "Fräulein, Feiertag"; "Südafrika"; "Osterzeit"; "Hallo zusammen"; "Fräulein, Bond".

einen Wörterbuch bekommen möchte (oder so ähnlich), die am Ende, wie folgt aussieht:

{{Fräulein: Universe, Marple, Feiertag, Bond}, {Süd : Afrika}, {Ost: Zeit}, {Hallo: alle}}.

Es muss kein Diktat sein, aber es sollte etwas sein, mit dem man später gut arbeiten kann. (Beispiel: dict_name["Miss"] konnte zurückkehren "Universum, Marple, Feiertag, Bond"

+0

hilft Was die qu ist estion? Was hast du probiert? Was ist los mit dem 2D-Wörterbuch, das du schon gepostet hast: '{{Miss: Universe, Marple, Feiertag, Bond}, {South: Africa}, {Eastern: Time}, {Hello: Everybody}}? – Carcigenicate

+0

Was konstruieren Sie nicht ein eindimensionales Wörterbuch von '{key: list (values)}'? – AChampion

+0

Wie sieht Ihr Programm bisher aus? Wo ist Ihre Liste der Fehlermeldungen? Was haben Sie bisher in Bezug auf Design, Forschung usw. getan? –

Antwort

0

können Sie defaultdict verwenden, um so etwas wie:.

from collections import defaultdict 

d = defaultdict(list) 

for x in data: 
    k, v = [i.strip() for i in x.split(",")] 
    d[k].append(v) 

Jetzt können Sie "Miss" zugreifen, indem

d['Miss'] 

und es wird eine Liste zurück: ['Universe', 'Marple', 'Holiday']

Hoffe, dass es

+0

Es hat sehr geholfen! Vielen Dank! :) – Marc