Dictionary - Values zu Key updaten

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
ete
User
Beiträge: 218
Registriert: Montag 19. Februar 2007, 13:19
Kontaktdaten:

Hallo!

Ist es irgendwie möglich zu einem schon vorhandenen Schlüssel, einen weiteren Wert zuzufügen? Durch update wird ja das Schlüssel-Wert Paar überschrieben. Ich möchte aber nur den neuen Wert zum vorhandenen Schlüssel fügen, ohne den alten Wert zu verlieren.

Geht das mit dicts?

Lg
Stefanie
http://www.snowflake-sl.info/index.html
Benutzeravatar
b.esser-wisser
User
Beiträge: 272
Registriert: Freitag 20. Februar 2009, 14:21
Wohnort: Bundeshauptstadt B.

Du kannst Listen als Werte benutzen - da kann man anhängen:

Code: Alles auswählen

#Alt:
my_dict = {"key1":"Hallo", 99123:None}
#Neu:
my_dict = {"key1":["Hallo"], 99123:[None]}
my_dict["key1"].append("Welt")
Du musst mit den Werten dann eben etwas anders umgehen.

hth, Jörg
lunar

Alternativ kopierst du eine der zahllosen MultiDict-Typen, die im Schatten diverser WSGI-Bibliotheken entstanden sind oder im Python-Cookbook als Snippets veröffentlicht wurden.

MultiDict-Implementierungen gibt es beispielsweise in Werkzeug und WebOb (eine Bibliothek aus dem Paste/Pylons-Umfeld). Beide Bibliotheken unterliegen liberalen Lizenzen, so dass das Kopieren der Klassen in den eigenen Code kein Problem darstellt, solange du die Copyright-Zeilen auch übernimmst.
Antworten