Un dizionario in Python funziona in modo simile al dizionario nel mondo reale. Le chiavi di un dizionario devono essere univoche e di tipi di dati immutabili come stringhe, numeri interi e tuple, ma i valori delle chiavi possono essere ripetuti ed essere di qualsiasi tipo.
Cos'è Python nel dizionario annidato?
Nidificazione Dizionario significa mettere un dizionario dentro un altro dizionario. La nidificazione è di grande utilità poiché il tipo di informazioni che possiamo modellare nei programmi viene notevolmente ampliato.
nested_dict = {'dict1': {'key_A': 'value_A'}, 'dict2': {'key_B': 'value_B'}}> Esempio
Python3
c# dataora
# As shown in image> # Creating a Nested Dictionary> Dict> => {>1>:>'Geeks'>,>2>:>'For'>,>3>: {>'A'>:>'Welcome'>,>'B'>:>'To'>,>'C'>:>'Geeks'>}}> |
>
numero casuale in Java
>
Illustrazione utilizzando l'immagine
Creazione di un dizionario nidificato
In Python, è possibile creare un dizionario annidato inserendo i dizionari separati da virgole racchiusi tra parentesi graffe.
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>)> |
>
>
Produzione:
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'}}> Aggiunta di elementi a un dizionario nidificato
L'aggiunta di elementi a un dizionario nidificato può essere eseguita in diversi modi. Un modo per aggiungere un dizionario nel dizionario nidificato è aggiungere i valori uno per uno, Nested_dict[dict][key] = 'valore'. Un altro modo è aggiungere l'intero dizionario in una volta sola, Nested_dict[dict] = { 'key': 'value'}.
Python3
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>)> |
>
stringa Java di concatenazione
>
Produzione:
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'}}> Accedere agli elementi di un dizionario nidificato
Per accedere al valore di qualsiasi chiave nel dizionario nidificato, utilizzare la sintassi indicizzazione [].
Python3
# 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'>])> |
>
come convertire da stringa a int
>
Produzione:
Ali 25>
Eliminazione di dizionari da un dizionario nidificato
La cancellazione dei dizionari da un dizionario nidificato può essere eseguita utilizzando la parola chiave Python del oppure utilizzando funzione pop() .
Python3
Java genera un numero casuale
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>)> |
>
>
Produzione:
Initial nested dictionary:- {'Dict2': {'name': 'Bob', 'age': 21}, 'Dict1': {'name': 'Ali', 'age': 19}} Deleting Dict2:- {'Dict1': {'name': 'Ali', 'age': 19}} Deleting Dict1:- {}>