Append verschachtelten dictionaries
Wenn Sie ein verschachteltes dictionary, wo jeder "außen" - Taste zuordnen können Sie ein Wörterbuch mit mehreren Schlüsseln, wie fügen Sie einen neuen Schlüssel in der 'inneren' Wörterbuch? Zum Beispiel habe ich eine Liste, wo jedes element besteht aus 3 Komponenten: einem äußeren Schlüssel, ein innerer Schlüssel, und einem Wert (B 10).
Hier ist die Schleife habe ich bisher
for e in keyList:
nested_dict[e[0]] = {e[2] : e[3:]}
Gerade jetzt, anstatt das hinzufügen von neuen Schlüssel /Wert-um das innere Wörterbuch, keine neuen Schlüssel /Wert-geradezu ersetzt das innere Wörterbuch.
Zum Beispiel, können sagen, dass die keyList ist nur [(B 10), (D 15)]. Das Ergebnis dieser Schleife ist
{'A' : {'D' : 15}}
Wie kann ich es so machen, stattdessen ist es
{'A' : {'B' : 10, 'D' : 15}}
InformationsquelleAutor Bob | 2016-09-24
Du musst angemeldet sein, um einen Kommentar abzugeben.
Du gesagt, dein code zuweisen neu angelegte dict-key
e[0]
. Es ist immer ersetzt blind und sieht es nicht auf die zuvor gespeicherten Wert.Stattdessen müssen Sie etwas wie:
If
bedingt ist, die erforderlich sind, um den "ersten Schlüssel" Fall. Alternativdefaultdict
verwendet werden kann.InformationsquelleAutor Łukasz Rogalski