Python genest woordenboek (met voorbeelden)

In dit artikel leert u over genest woordenboek in Python. Meer specifiek leert u geneste woordenboeken te maken, toegang te krijgen tot elementen, ze aan te passen, enzovoort met behulp van voorbeelden.

In Python is een woordenboek een ongeordende verzameling items. Bijvoorbeeld:

 woordenboek = ('key': 'waarde', 'key_2': 'waarde_2')

Hier heeft het woordenboek een key:valuepaar tussen accolades ().

Bezoek Python Dictionary voor meer informatie over het woordenboek.

Wat is genest woordenboek in Python?

In Python is een genest woordenboek een woordenboek in een woordenboek. Het is een verzameling woordenboeken in één woordenboek.

 nested_dict = ('dictA': ('key_1': 'value_1'), 'dictB': ('key_2': 'value_2'))

Hier is het geneste_dict een genest woordenboek met het woordenboek dictAen dictB. Het zijn twee woordenboeken met elk een eigen sleutel en waarde.

Maak een genest woordenboek

We gaan een woordenboek maken van mensen in een woordenboek.

Voorbeeld 1: een genest woordenboek maken

 people = (1: ('name': 'John', 'age': '27', 'sex': 'Male'), 2: ('name': 'Marie', 'age': '22', 'sex': 'Female')) print(people)

Wanneer we het bovenstaande programma uitvoeren, zal het uitvoeren:

 (1: ('name': 'John', 'age': '27', 'sex': 'Male'), 2: ('name': 'Marie', 'age': '22', 'sex ': 'Vrouw'))

In het bovenstaande programma is mensen een genest woordenboek. Het interne woordenboek 1en 2is toegewezen aan personen. Hier zijn zowel het woordenboek hebben sleutel name, age, sexmet verschillende waarden. Nu drukken we het resultaat van mensen af.

Toegang tot elementen van een genest woordenboek

Om toegang te krijgen tot een element van een genest woordenboek, gebruiken we indexeringssyntaxis ()in Python.

Voorbeeld 2: toegang tot de elementen met behulp van de () syntaxis

 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'))

Wanneer we het bovenstaande programma uitvoeren, zal het uitvoeren:

 John 27 Man

In het bovenstaande programma drukken we de waarde van de sleutel af namemet behulp people(1)('name')van bijvoorbeeld een intern woordenboek 1. Op dezelfde manier drukken we de waarde van ageen sexéén voor één af.

Element toevoegen aan een genest woordenboek

Voorbeeld 3: Hoe elementen in een genest woordenboek wijzigen of toevoegen?

 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))

Wanneer we het bovenstaande programma uitvoeren, zal het uitvoeren:

 ('naam': 'Luna', 'leeftijd': '24', 'geslacht': 'Vrouw', 'getrouwd': 'Nee')

In het bovenstaande programma maken we een leeg woordenboek 3binnen de woordenboekmensen.

Vervolgens voegen we het key:valuepaar toe, dwz people(3)('Name') = 'Luna'binnen het woordenboek 3. Op dezelfde manier doen we dit voor de sleutel age, sexen marriedéén voor één. Als we de afdrukken people(3), krijgen we key:valuewoordenboeken 3.

Voorbeeld 4: voeg nog een woordenboek toe aan het geneste woordenboek

 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))

Wanneer we het bovenstaande programma uitvoeren, zal het uitvoeren:

 ('naam': 'Peter', 'leeftijd': '29', 'geslacht': 'Man', 'getrouwd': 'Ja')

In het bovenstaande programma wijzen we een woordenboek letterlijk toe aan people(4). De letterlijke hebben sleutels name, ageen sexmet de respectieve waarden. Vervolgens drukken we de af people(4), om te zien dat het woordenboek 4wordt toegevoegd aan geneste woordenboekpersonen.

Verwijder elementen uit een genest woordenboek

In Python gebruiken we de instructie "del" om elementen uit een genest woordenboek te verwijderen.

Voorbeeld 5: Hoe verwijder ik elementen uit een genest woordenboek?

 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))

Wanneer we het bovenstaande programma uitvoeren, zal het uitvoeren:

 ('name': 'Luna', 'age': '24', 'sex': 'Female') ('name': 'Peter', 'age': '29', 'sex': 'Male')

In het bovenstaande programma verwijderen we de key:valueparen marrieduit het interne woordenboek 3en 4. Vervolgens drukken we de people(3)en af people(4)om wijzigingen te bevestigen.

Voorbeeld 6: Hoe verwijder ik een woordenboek uit een genest woordenboek?

 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)

Wanneer we het bovenstaande programma uitvoeren, zal het uitvoeren:

 (1: ('name': 'John', 'age': '27', 'sex': 'Male'), 2: ('name': 'Marie', 'age': '22', 'sex ': 'Vrouw'))

In het bovenstaande programma verwijderen we zowel het interne woordenboek 3als het 4gebruik delvan de geneste woordenboekpersonen. Vervolgens drukken we de geneste woordenboekpersonen af ​​om wijzigingen te bevestigen.

Itereren door een genest woordenboek

Met behulp van de for-lussen kunnen we elk element in een genest woordenboek doorlopen.

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:

  1. Nested dictionary is an unordered collection of dictionary
  2. Slicing Nested Dictionary is not possible.
  3. We can shrink or grow nested dictionary as need.
  4. Like Dictionary, it also has key and value.
  5. Woordenboek is toegankelijk met de sleutel.

Interessante artikelen...