Mögliches Duplikat:
Syntax zum Einfügen einer Liste in eine andere Liste in Python
Wie könnte die Syntax für die Erstellung eines Wörterbuchs in ein anderes Wörterbuch in Python sein
Mögliches Duplikat:
Syntax zum Einfügen einer Liste in eine andere Liste in Python
Wie könnte die Syntax für die Erstellung eines Wörterbuchs in ein anderes Wörterbuch in Python sein
Sie können ein Wörterbuch innerhalb eines Wörterbuchs deklarieren, indem Sie die {}-Container verschachteln:
d = {'dict1': {'foo': 1, 'bar': 2}, 'dict2': {'baz': 3, 'quux': 4}}
Anschließend können Sie mit der []-Syntax auf die Elemente zugreifen:
print d['dict1'] # {'foo': 1, 'bar': 2}
print d['dict1']['foo'] # 1
print d['dict2']['quux'] # 4
Wenn Sie also ein weiteres Wörterbuch zum Wörterbuch hinzufügen möchten, können Sie dies folgendermaßen tun:
d['dict3'] = {'spam': 5, 'ham': 6}
oder wenn Sie es vorziehen, dem internen Wörterbuch einen Eintrag nach dem anderen hinzuzufügen:
d['dict4'] = {}
d['dict4']['king'] = 7
d['dict4']['queen'] = 8
Möchten Sie ein Wörterbuch in ein anderes einfügen, als eines seiner Elemente, oder möchten Sie die Werte eines Wörterbuchs aus den Schlüsseln eines anderen referenzieren?
In früheren Antworten wurde bereits der erste Fall behandelt, bei dem Sie ein Wörterbuch innerhalb eines anderen Wörterbuchs erstellen.
Um die Werte eines Wörterbuchs in ein anderes zu referenzieren, können Sie dict.update
:
>>> d1 = {1: [1]}
>>> d2 = {2: [2]}
>>> d1.update(d2)
>>> d1
{1: [1], 2: [2]}
Eine Änderung eines Wertes, der in beiden Wörterbüchern vorhanden ist, wird in beiden sichtbar:
>>> d1[2].append('appended')
>>> d1
{1: [1], 2: [2, 'appended']}
>>> d2
{2: [2, 'appended']}
Dies ist dasselbe wie das Kopieren des Wertes oder das Erstellen eines neuen Wörterbuchs mit ihm, d.h.
>>> d3 = {1: d1[1]}
>>> d3[1].append('appended from d3')
>>> d1[1]
[1, 'appended from d3']
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.