Requisito previo: diccionario de Python
Un diccionario en Python funciona de manera similar al diccionario en el mundo real. Las claves de un diccionario deben ser únicas y de tipo de datos inmutables como strings, enteros y tuplas, pero los valores clave pueden repetirse y ser de cualquier tipo.
Diccionario anidado: Diccionario anidado 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.
Python3
nested_dict = { 'dict1': {'key_A': 'value_A'}, 'dict2': {'key_B': 'value_B'}}
Python3
# As shown in image # Creating a Nested Dictionary Dict = {1: 'Geeks', 2: 'For', 3: {'A' : 'Welcome', 'B' : 'To', 'C' : 'Geeks'}}
Creación de un diccionario anidado
En Python, se puede crear un diccionario anidado colocando los diccionarios separados por comas encerrados 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("\nNested 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("\nNested 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'}}
Adición de 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 sea uno, Nested_dict[dict][clave] = ‘valor’. Otra forma es agregar todo el diccionario de una sola vez, 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("\nAfter adding dictionary Dict1") print(Dict) # Adding whole dictionary Dict['Dict2'] = {'name': 'Cara', 'age': 25} print("\nAfter adding dictionary Dict1") print(Dict)
Producción:
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, use 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
Eliminación de diccionarios de un diccionario anidado
La eliminación de diccionarios de un diccionario anidado se puede hacer usando la palabra clave del o usando la función pop().
Python3
Dict = {'Dict1': {'name': 'Ali', 'age': 19}, 'Dict2': {'name': 'Bob', 'age': 21}} print("Initial nested dictionary:-") print(Dict) # Deleting dictionary using del keyword print("\nDeleting Dict2:-") del Dict['Dict2'] print(Dict) # Deleting dictionary using pop function print("\nDeleting 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:- {}
Publicación traducida automáticamente
Artículo escrito por Smitha Dinesh Semwal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA