Un diccionario en Python funciona de manera similar al diccionario del mundo real. Las claves de un Diccionario deben ser únicas y de tipos de datos inmutables, como cadenas, enteros y tuplas, pero los valores de las claves pueden repetirse y ser de cualquier tipo.
¿Qué es Python en el diccionario anidado?
Anidación Diccionario significa poner un diccionario dentro de otro diccionario. El anidamiento es de gran utilidad ya que el tipo de información que podemos modelar en los programas se amplía enormemente.
nested_dict = {'dict1': {'key_A': 'value_A'}, 'dict2': {'key_B': 'value_B'}}> Ejemplo
Python3
objeto en programación java
# As shown in image> # Creating a Nested Dictionary> Dict> => {>1>:>'Geeks'>,>2>:>'For'>,>3>: {>'A'>:>'Welcome'>,>'B'>:>'To'>,>'C'>:>'Geeks'>}}> |
>
expresión de regresión en java
>
Ilustración usando imagen
Crear un diccionario anidado
En Python, se puede crear un diccionario anidado colocando los diccionarios separados por comas entre llaves.
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>)> |
>
>
Producción:
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'}}> Agregar elementos a un diccionario anidado
La adición de elementos a un Diccionario anidado se puede realizar de varias formas. Una forma de agregar un diccionario en el diccionario anidado es agregar valores uno a uno, Nested_dict[dict][key] = 'valor'. Otra forma es agregar todo el diccionario de una sola vez, Nested_dict[dict] = { 'key': 'value'}.
Python3
cadena en int
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>)> |
>
>
Producción:
cola de prioridad java
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'}}> Acceder a elementos de un diccionario anidado
Para acceder al valor de cualquier clave en el diccionario anidado, utilice la sintaxis de indexación [].
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'>])> |
>
>
Producción:
Ali 25>
Eliminar diccionarios de un diccionario anidado
La eliminación de diccionarios de un diccionario anidado se puede realizar utilizando la palabra clave del de Python o utilizando función pop() .
Python3
harald balder
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>)> |
>
>
Producción:
Initial nested dictionary:- {'Dict2': {'name': 'Bob', 'age': 21}, 'Dict1': {'name': 'Ali', 'age': 19}} Deleting Dict2:- {'Dict1': {'name': 'Ali', 'age': 19}} Deleting Dict1:- {}>