logo

Dizionario nidificato Python

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

Dizionario nidificato Python

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:- {}>