Comprensión de diccionario en Python

Manav Narula 10 octubre 2023
Comprensión de diccionario en Python

Una lista es una colección ordenada de varios elementos con un nombre común. Es sencillo crear y administrar listas en Python. Para hacerlo más fácil, tenemos el método de comprensión de listas disponible en Python. Este método es mucho más conciso, elegante y, por lo general, es solo una línea de código. Por lo general, implica el uso del bucle for entre corchetes.

El siguiente código demuestra el uso de este método para crear una lista simple de números enteros.

lst = [i for i in range(1, 10)]
print(lst)

Producción :

[1, 2, 3, 4, 5, 6, 7, 8, 9]

Por otro lado, se utiliza un diccionario para almacenar pares clave-valor. También hay soporte en Python 2.7 y versiones posteriores para la comprensión de diccionarios. Se usa de manera similar para crear diccionarios en una sola línea de código.

Por ejemplo,

d = {i: i * 5 for i in range(1, 5)}
print(d)

Producción :

{1: 5, 2: 10, 3: 15, 4: 20}

En el código anterior, asignamos números enteros del 1 al 5 como claves del diccionario y asignamos el producto de la clave y 5 como su valor.

Todos sabemos que podemos crear una lista de claves y valores de un diccionario. Usando el método de comprensión de diccionario, podemos crear fácilmente un diccionario usando elementos de una lista. Se muestra en el siguiente ejemplo.

keys = [1, 2, 3, 4, 5]
vals = ["Mark", "Jack", "Jake", "Sam", "Ash"]

d = {i: j for i, j in zip(keys, vals)}

print(d)

Producción :

{1: 'Mark', 2: 'Jack', 3: 'Jake', 4: 'Sam', 5: 'Ash'}

La función zip() en el ejemplo anterior se utiliza para devolver un objeto de tipo zip después de combinar las dos listas.

Vale la pena señalar que también hay otras formas de crear diccionarios más rápido. Por ejemplo, podemos usar la función fromkeys(). Esta función nos permite crear un diccionario proporcionando las claves de una lista. La desventaja es que especifica un mismo valor para todas las claves.

Por ejemplo,

keys = [1, 2, 3, 4, 5]

d = dict.fromkeys(keys, "True")

print(d)

Producción :

 {1: 'True', 2: 'True', 3: 'True', 4: 'True', 5: 'True'}
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Artículo relacionado - Python Dictionary