In diesem Artikel erfahren Sie mehr über verschachtelte Wörterbücher in Python. Insbesondere lernen Sie anhand von Beispielen, ein verschachteltes Wörterbuch zu erstellen, auf Elemente zuzugreifen, diese zu ändern usw.
In Python ist ein Wörterbuch eine ungeordnete Sammlung von Elementen. Beispielsweise:
dictionary = ('key': 'value', 'key_2': 'value_2')
Hier hat das Wörterbuch ein key:value
Paar in geschweiften Klammern ()
.
Um mehr über das Wörterbuch zu erfahren, besuchen Sie bitte das Python-Wörterbuch.
Was ist ein verschachteltes Wörterbuch in Python?
In Python ist ein verschachteltes Wörterbuch ein Wörterbuch in einem Wörterbuch. Es ist eine Sammlung von Wörterbüchern in einem einzigen Wörterbuch.
nested_dict = ('dictA': ('key_1': 'value_1'), 'dictB': ('key_2': 'value_2'))
Hier ist das nested_dict ein verschachteltes Wörterbuch mit dem Wörterbuch dictA
und dictB
. Es handelt sich um zwei Wörterbücher mit jeweils eigenem Schlüssel und Wert.
Erstellen Sie ein verschachteltes Wörterbuch
Wir werden ein Wörterbuch mit Personen in einem Wörterbuch erstellen.
Beispiel 1: So erstellen Sie ein verschachteltes Wörterbuch
people = (1: ('name': 'John', 'age': '27', 'sex': 'Male'), 2: ('name': 'Marie', 'age': '22', 'sex': 'Female')) print(people)
Wenn wir das obige Programm ausführen, wird Folgendes ausgegeben:
(1: ('Name': 'John', 'Alter': '27', 'Geschlecht': 'Männlich'), 2: ('Name': 'Marie', 'Alter': '22', 'Geschlecht' ':' Weiblich '))
Im obigen Programm ist people ein verschachteltes Wörterbuch. Das interne Wörterbuch 1
und 2
ist Personen zugeordnet. Hier sind sowohl das Wörterbuch haben Schlüssel name
, age
, sex
mit unterschiedlichen Werten. Jetzt drucken wir das Ergebnis von Menschen.
Greifen Sie auf Elemente eines verschachtelten Wörterbuchs zu
Um auf Elemente eines verschachtelten Wörterbuchs zuzugreifen, verwenden wir die Indizierungssyntax ()
in Python.
Beispiel 2: Greifen Sie mit der Syntax () auf die Elemente zu
people = (1: ('name': 'John', 'age': '27', 'sex': 'Male'), 2: ('name': 'Marie', 'age': '22', 'sex': 'Female')) print(people(1)('name')) print(people(1)('age')) print(people(1)('sex'))
Wenn wir das obige Programm ausführen, wird Folgendes ausgegeben:
John 27 Männlich
Im obigen Programm drucken wir den Wert des Schlüssels name
mit dh people(1)('name')
aus dem internen Wörterbuch 1
. Ebenso drucken wir den Wert von age
und sex
nacheinander.
Element zu einem verschachtelten Wörterbuch hinzufügen
Beispiel 3: Wie ändere oder füge ich Elemente in einem verschachtelten Wörterbuch hinzu?
people = (1: ('name': 'John', 'age': '27', 'sex': 'Male'), 2: ('name': 'Marie', 'age': '22', 'sex': 'Female')) people(3) = () people(3)('name') = 'Luna' people(3)('age') = '24' people(3)('sex') = 'Female' people(3)('married') = 'No' print(people(3))
Wenn wir das obige Programm ausführen, wird Folgendes ausgegeben:
('Name': 'Luna', 'Alter': '24', 'Geschlecht': 'Weiblich', 'verheiratet': 'Nein')
Im obigen Programm erstellen wir ein leeres Wörterbuch 3
innerhalb der Wörterbuchleute.
Dann fügen wir das key:value
Paar hinzu, dh people(3)('Name') = 'Luna'
innerhalb des Wörterbuchs 3
. In ähnlicher Weise tun wir dies für Schlüssel age
, sex
und married
eins nach dem anderen. Wenn wir das drucken people(3)
, erhalten wir key:value
Wörterbuchpaare 3
.
Beispiel 4: Fügen Sie dem verschachtelten Wörterbuch ein weiteres Wörterbuch hinzu
people = (1: ('name': 'John', 'age': '27', 'sex': 'Male'), 2: ('name': 'Marie', 'age': '22', 'sex': 'Female'), 3: ('name': 'Luna', 'age': '24', 'sex': 'Female', 'married': 'No')) people(4) = ('name': 'Peter', 'age': '29', 'sex': 'Male', 'married': 'Yes') print(people(4))
Wenn wir das obige Programm ausführen, wird Folgendes ausgegeben:
('Name': 'Peter', 'Alter': '29', 'Geschlecht': 'Männlich', 'verheiratet': 'Ja')
Im obigen Programm weisen wir ein Wörterbuchliteral zu people(4)
. Die wörtliche haben Schlüssel name
, age
und sex
mit entsprechenden Werten. Dann drucken wir das aus people(4)
, um zu sehen, dass das Wörterbuch 4
in verschachtelten Wörterbuchleuten hinzugefügt wird.
Löschen Sie Elemente aus einem verschachtelten Wörterbuch
In Python verwenden wir die Anweisung "del", um Elemente aus dem verschachtelten Wörterbuch zu löschen.
Beispiel 5: Wie lösche ich Elemente aus einem verschachtelten Wörterbuch?
people = (1: ('name': 'John', 'age': '27', 'sex': 'Male'), 2: ('name': 'Marie', 'age': '22', 'sex': 'Female'), 3: ('name': 'Luna', 'age': '24', 'sex': 'Female', 'married': 'No'), 4: ('name': 'Peter', 'age': '29', 'sex': 'Male', 'married': 'Yes')) del people(3)('married') del people(4)('married') print(people(3)) print(people(4))
Wenn wir das obige Programm ausführen, wird Folgendes ausgegeben:
('Name': 'Luna', 'Alter': '24', 'Geschlecht': 'Weiblich') ('Name': 'Peter', 'Alter': '29', 'Geschlecht': 'Männlich')
Im obigen Programm löschen wir die key:value
Paare von married
aus dem internen Wörterbuch 3
und 4
. Dann drucken wir das people(3)
und aus people(4)
, um die Änderungen zu bestätigen.
Beispiel 6: Wie lösche ich ein Wörterbuch aus einem verschachtelten Wörterbuch?
people = (1: ('name': 'John', 'age': '27', 'sex': 'Male'), 2: ('name': 'Marie', 'age': '22', 'sex': 'Female'), 3: ('name': 'Luna', 'age': '24', 'sex': 'Female'), 4: ('name': 'Peter', 'age': '29', 'sex': 'Male')) del people(3), people(4) print(people)
Wenn wir das obige Programm ausführen, wird Folgendes ausgegeben:
(1: ('Name': 'John', 'Alter': '27', 'Geschlecht': 'Männlich'), 2: ('Name': 'Marie', 'Alter': '22', 'Geschlecht' ':' Weiblich '))
Im obigen Programm löschen wir sowohl das interne Wörterbuch 3
als auch die 4
Verwendung del
aus dem verschachtelten Wörterbuch. Anschließend drucken wir die verschachtelten Wörterbuchmitarbeiter aus, um die Änderungen zu bestätigen.
Durch ein verschachteltes Wörterbuch iterieren
Mit den for-Schleifen können wir alle Elemente in einem verschachtelten Wörterbuch durchlaufen.
Example 7: How to iterate through a Nested dictionary?
people = (1: ('Name': 'John', 'Age': '27', 'Sex': 'Male'), 2: ('Name': 'Marie', 'Age': '22', 'Sex': 'Female')) for p_id, p_info in people.items(): print("Person ID:", p_id) for key in p_info: print(key + ':', p_info(key))
When we run above program, it will output:
Person ID: 1 Name: John Age: 27 Sex: Male Person ID: 2 Name: Marie Age: 22 Sex: Female
In the above program, the first loop returns all the keys in the nested dictionary people. It consist of the IDs p_id of each person. We use these IDs to unpack the information p_info of each person.
The second loop goes through the information of each person. Then, it returns all of the keys name
, age
, sex
of each person's dictionary.
Now, we print the key of the person’s information and the value for that key.
Key Points to Remember:
- Nested dictionary is an unordered collection of dictionary
- Slicing Nested Dictionary is not possible.
- We can shrink or grow nested dictionary as need.
- Like Dictionary, it also has key and value.
- Auf das Wörterbuch wird mit dem Schlüssel zugegriffen.