Słownik w Pythonie działa podobnie do słownika w świecie rzeczywistym. Klucze słownika muszą być unikalne i mieć niezmienne typy danych, takie jak ciągi znaków, liczby całkowite i krotki, ale wartości kluczy mogą się powtarzać i być dowolnego typu.
Co to jest Python w zagnieżdżonym słowniku?
Zagnieżdżanie Słownik oznacza umieszczenie słownika w innym słowniku. Zagnieżdżanie jest bardzo przydatne, ponieważ rodzaj informacji, które możemy modelować w programach, jest znacznie rozszerzony.
nested_dict = {'dict1': {'key_A': 'value_A'}, 'dict2': {'key_B': 'value_B'}}> Przykład
Python3
ile zer jest w 1 miliardzie
# As shown in image> # Creating a Nested Dictionary> Dict> => {>1>:>'Geeks'>,>2>:>'For'>,>3>: {>'A'>:>'Welcome'>,>'B'>:>'To'>,>'C'>:>'Geeks'>}}> |
>
100 km/h na mph
>
Ilustracja za pomocą obrazu
Tworzenie słownika zagnieżdżonego
W Pythonie słownik zagnieżdżony można utworzyć, umieszczając słowniki rozdzielone przecinkami ujęte w nawiasy klamrowe.
Python3
# Empty nested dictionary> Dict> => {>'Dict1'>: { },> >'Dict2'>: { }}> print>(>'Nested dictionary 1-'>)> print>(>Dict>)> # Nested dictionary having same keys> Dict> => {>'Dict1'>: {>'name'>:>'Ali'>,>'age'>:>'19'>},> >'Dict2'>: {>'name'>:>'Bob'>,>'age'>:>'25'>}}> print>(>'
Nested dictionary 2-'>)> print>(>Dict>)> # Nested dictionary of mixed dictionary keys> Dict> => {>'Dict1'>: {>1>:>'G'>,>2>:>'F'>,>3>:>'G'>},> >'Dict2'>: {>'Name'>:>'Geeks'>,>1>: [>1>,>2>]} }> print>(>'
Nested dictionary 3-'>)> print>(>Dict>)> |
>
>
Wyjście:
Nested dictionary 1- {'Dict1': {}, 'Dict2': {}} Nested dictionary 2- {'Dict1': {'name': 'Ali', 'age': '19'}, 'Dict2': {'name': 'Bob', 'age': '25'}} Nested dictionary 3- {'Dict1': {1: 'G', 2: 'F', 3: 'G'}, 'Dict2': {1: [1, 2], 'Name': 'Geeks'}}> Dodawanie elementów do słownika zagnieżdżonego
Dodawanie elementów do zagnieżdżonego słownika można wykonać na wiele sposobów. Jednym ze sposobów dodania słownika do słownika zagnieżdżonego jest dodanie wartości pojedynczo, Nested_dict[dict][key] = „wartość”. Innym sposobem jest dodanie całego słownika za jednym razem, Nested_dict[dict] = { „klucz”: „wartość”}.
Python3
przechodzenie przez drzewo
Dict> => { }> print>(>'Initial nested dictionary:-'>)> print>(>Dict>)> Dict>[>'Dict1'>]>=> {}> # Adding elements one at a time> Dict>[>'Dict1'>][>'name'>]>=> 'Bob'> Dict>[>'Dict1'>][>'age'>]>=> 21> print>(>'
After adding dictionary Dict1'>)> print>(>Dict>)> # Adding whole dictionary> Dict>[>'Dict2'>]>=> {>'name'>:>'Cara'>,>'age'>:>25>}> print>(>'
After adding dictionary Dict1'>)> print>(>Dict>)> |
>
>
Wyjście:
Initial nested dictionary:- {} After adding dictionary Dict1 {'Dict1': {'age': 21, 'name': 'Bob'}} After adding dictionary Dict1 {'Dict1': {'age': 21, 'name': 'Bob'}, 'Dict2': {'age': 25, 'name': 'Cara'}}> Dostęp do elementów słownika zagnieżdżonego
Aby uzyskać dostęp do wartości dowolnego klucza w zagnieżdżonym słowniku, użyj składni indeksowania [].
Python3
ciąg json Java
# Nested dictionary having same keys> Dict> => {>'Dict1'>: {>'name'>:>'Ali'>,>'age'>:>'19'>},> >'Dict2'>: {>'name'>:>'Bob'>,>'age'>:>'25'>}}> # Prints value corresponding to key 'name' in Dict1> print>(>Dict>[>'Dict1'>][>'name'>])> # Prints value corresponding to key 'age' in Dict2> print>(>Dict>[>'Dict2'>][>'age'>])> |
>
>
Wyjście:
Ali 25>
Usuwanie słowników ze słownika zagnieżdżonego
Usuwanie słowników ze słownika zagnieżdżonego można wykonać za pomocą słowa kluczowego del języka Python lub za pomocą funkcja pop(). .
Python3
lista inicjalizacyjna Pythona
Dict> => {>'Dict1'>: {>'name'>:>'Ali'>,>'age'>:>19>},> >'Dict2'>: {>'name'>:>'Bob'>,>'age'>:>21>}}> print>(>'Initial nested dictionary:-'>)> print>(>Dict>)> # Deleting dictionary using del keyword> print>(>'
Deleting Dict2:-'>)> del> Dict>[>'Dict2'>]> print>(>Dict>)> # Deleting dictionary using pop function> print>(>'
Deleting Dict1:-'>)> Dict>.pop(>'Dict1'>)> print> (>Dict>)> |
>
>
Wyjście:
Initial nested dictionary:- {'Dict2': {'name': 'Bob', 'age': 21}, 'Dict1': {'name': 'Ali', 'age': 19}} Deleting Dict2:- {'Dict1': {'name': 'Ali', 'age': 19}} Deleting Dict1:- {}>