En este artículo, discutiremos cómo iterar sobre un diccionario anidado en Python.
Diccionario anidado significa diccionario dentro de un diccionario y vamos a ver todas las formas posibles de iterar sobre dicha estructura de datos.
Diccionario anidado en uso:
{‘Estudiante 1’: {‘Nombre’: ‘Bobby’, ‘Id’: 1, ‘Edad’: 20},
‘Estudiante 2’: {‘Nombre’: ‘ojaswi’, ‘Id’: 2, ‘Edad’: 22},
‘Estudiante 3’: {‘Nombre’: ‘rohith’, ‘Id’: 3, ‘Edad’: 20}}
Para esto, usaremos for loop para iterar a través de un diccionario para obtener todos los valores clave de los diccionarios anidados.
Sintaxis:
for i in dictionary_name: print(dictionary_name[i])
dónde
- nombre_diccionario es el diccionario de entrada
- nombre_diccionario[i] es el valor para obtener diccionarios
Ejemplo : programa Python para obtener los diccionarios anidados de un diccionario
Python3
# create a nested dictionary with 3 # fields of 3 students data = { 'Student 1': {'Name': 'Bobby', 'Id': 1, "Age": 20}, 'Student 2': {'Name': 'ojaswi', 'Id': 2, "Age": 22}, 'Student 3': {'Name': 'rohith', 'Id': 3, "Age": 20}, } # iterate all the nested dictionaries with # both keys and values for i in data: # display print(data[i])
Producción:
{'Name': 'Bobby', 'Id': 1, 'Age': 20} {'Name': 'ojaswi', 'Id': 2, 'Age': 22} {'Name': 'rohith', 'Id': 3, 'Age': 20}
También es posible obtener solo claves o valores si eso es lo que solicita el requisito. Nuevamente, para esto se emplea el bucle for con una pequeña variación.
Para obtener claves del diccionario anidado para cada iteración, se llama a la función keys().
Sintaxis:
data[i].keys()
Ejemplo: programa Python para obtener claves del diccionario anidado
Python3
# create a nested dictionary with 3 fields of 3 students data = { 'Student 1': {'Name': 'Bobby', 'Id': 1, "Age": 20}, 'Student 2': {'Name': 'ojaswi', 'Id': 2, "Age": 22}, 'Student 3': {'Name': 'rohith', 'Id': 3, "Age": 20}, } # iterate all the nested dictionaries with keys for i in data: # display print(data[i].keys())
Producción:
dict_values(['Bobby', 1, 20]) dict_values(['ojaswi', 2, 22]) dict_values(['rohith', 3, 20])
De manera similar, para obtener valores, después de cada iteración, se usa la función de valores() para realizar el trabajo.
Sintaxis:
data[i].values()
Ejemplo: programa Python para obtener valores del diccionario anidado
Python3
# create a nested dictionary with 3 fields of 3 students data = { 'Student 1': {'Name': 'Bobby', 'Id': 1, "Age": 20}, 'Student 2': {'Name': 'ojaswi', 'Id': 2, "Age": 22}, 'Student 3': {'Name': 'rohith', 'Id': 3, "Age": 20}, } # iterate all the nested dictionaries with values for i in data: # display print(data[i].values())
Producción:
dict_values(['Bobby', 1, 20]) dict_values(['ojaswi', 2, 22]) dict_values(['rohith', 3, 20])
Publicación traducida automáticamente
Artículo escrito por gottumukkalabobby y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA