Iterar a través de la lista de diccionarios en Python

En este artículo, aprenderemos cómo iterar a través de una lista de diccionarios. 

Lista de diccionarios en uso:

[{‘Python’: ‘Aprendizaje automático’, ‘R’: ‘Aprendizaje automático’}, 

{‘Python’: ‘Desarrollo web’, ‘Java Script’: ‘Desarrollo web’, ‘HTML’: ‘Desarrollo web’}, 

{‘C++’: ‘Desarrollo de juegos’, ‘Python’: ‘Desarrollo de juegos’}, {‘Java’: ‘Desarrollo de aplicaciones’, ‘Kotlin’: ‘Desarrollo de aplicaciones’}]

Método 1: usar la indexación

Este es un método directo, donde los elementos de la lista se extraen usando solo el índice.

Sintaxis:

lista[índice]

Ejemplo:

Python3

# Create a list of dictionaries
languages = [
    {
        "Python": "Machine Learning",
        "R": "Machine learning",
    },
    {
        "Python": "Web development",
        "Java Script": "Web Development",
        "HTML": "Web Development"
    },
    {
        "C++": "Game Development",
        "Python": "Game Development"
    },
    {
        "Java": "App Development",
        "Kotlin": "App Development"
    }
]
 
 
print(languages[0])
print(languages[1])
print(languages[2])
print(languages[3])

Producción:

{‘Python’: ‘Aprendizaje automático’, ‘R’: ‘Aprendizaje automático’}

{‘Python’: ‘Desarrollo web’, ‘Java Script’: ‘Desarrollo web’, ‘HTML’: ‘Desarrollo web’}

{‘C++’: ‘Desarrollo de juegos’, ‘Python’: ‘Desarrollo de juegos’}

{‘Java’: ‘Desarrollo de aplicaciones’, ‘Kotlin’: ‘Desarrollo de aplicaciones’}

Después de usar la indexación a diccionarios particulares, ahora podemos tratar cada elemento de la lista como un diccionario,

Ejemplo: extracción de valores de un diccionario en particular

Python3

# Create a list of dictionaries
languages = [
    {
        "Python": "Machine Learning",
        "R": "Machine learning",
    },
    {
        "Python": "Web development",
        "Java Script": "Web Development",
        "HTML": "Web Development"
    },
    {
        "C++": "Game Development",
        "Python": "Game Development"
    },
    {
        "Java": "App Development",
        "Kotlin": "App Development"
    }
]
 
for key, val in languages[0].items():
    print("{} : {}".format(key, val))

Producción:

Python: aprendizaje automático

R: aprendizaje automático

Método 2: Usar teclas()

Después de iterar a una lista, las claves del diccionario se pueden extraer aún más usando la función keys().

Ejemplo: extracción de valores clave

Python3

# Create a list of dictionaries
languages = [
    {
        "Python": "Machine Learning",
        "R": "Machine learning",
    },
    {
        "Python": "Web development",
        "Java Script": "Web Development",
        "HTML": "Web Development"
    },
    {
        "C++": "Game Development",
        "Python": "Game Development"
    },
    {
        "Java": "App Development",
        "Kotlin": "App Development"
    }
]
 
# iterate over the list
for i in languages:
   
    # now i is a dict, now we see the keys
    # of the dict
    for key in i.keys():
       
        # print every key of each dict
        print(key)
 
    print("-------------")

Producción:

Python

R

————-

Python

secuencia de comandos Java

HTML

————-

C++

Python

————-

Java

kotlin

————-

Método 3: Usar la comprensión de listas 

La lista simplemente se itera utilizando la comprensión de listas y los diccionarios se imprimen.

Ejemplo: extracción de claves mediante comprensión de listas

Python3

# Create a list of dictionaries
languages = [
    {
        "Python" : "Machine Learning",
        "R" : "Machine learning",
    },
    {
        "Python" : "Web development",
        "Java Script" : "Web Development",
        "HTML" : "Web Development"
    },
    {
        "C++" : "Game Development",
        "Python" : "Game Development"
    },
    {
        "Java" : "App Development",
        "Kotlin" : "App Development"
    }
]
 
# here we are printing the keys of the dictionary
# by using list comprehension and each key will be
# printed in a new line due to the presence of " sep = "\n" ".
# It will add a new line character to our output.
 
print(*[key for i in languages for key in i.keys()], sep = "\n")

Producción:

Python

R

Python

secuencia de comandos Java

HTML

C++

Python

Java

kotlin

Publicación traducida automáticamente

Artículo escrito por dev247kumar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *