Diccionarios en Python: Comprensión de Diccionarios con Ejemplos

Diccionarios en Python: Comprensión de Diccionarios con Ejemplos

Los diccionarios en Python, también conocidos como diccionarios python, son estructuras de datos que almacenan información en forma de pares clave-valor. Cada clave debe ser única y está asociada a un valor. Esta estructura proporciona una forma eficiente de almacenar y acceder a información relacionada.

Para comprender mejor los diccionarios en Python, imaginemos un escenario: un equipo de futbol ha jugado varios partidos, y necesitamos almacenar las puntuaciones de cada jugador. Podemos usar un diccionario python para esto. La clave sería el nombre del jugador, y el valor sería su puntuación en el juego. Por ejemplo:

python
puntuaciones = {"Messi": 2, "Ronaldo": 1, "Neymar": 3}

En este diccionario python, «Messi», «Ronaldo» y «Neymar» son las claves, y 2, 1 y 3 son sus valores correspondientes. Ahora, podemos acceder fácilmente a la puntuación de un jugador específico usando la clave:

python
print(puntuaciones["Messi"]) # Imprime 2

Comprensión de Diccionarios en Python

La comprensión de diccionarios en Python es una técnica concisa y elegante para crear nuevos diccionarios python a partir de iterables existentes. Esto implica definir un nuevo diccionario dentro de llaves, similar a las listas de comprensión, pero con la capacidad de crear pares clave-valor.

La sintaxis general para la comprensión de diccionarios python es:

python
{clave: valor for elemento in iterable}

Aquí, la clave y el valor se definen utilizando las expresiones necesarias, y el iterable se recorre para crear cada par clave-valor en el nuevo diccionario.

Ejemplos de Comprensión de Diccionarios

1. Descuentos Aleatorios para Clientes

Supongamos que tenemos una lista de clientes y queremos crear un diccionario de descuentos aleatorios para cada uno. Podemos usar la comprensión de diccionarios python para este propósito:

LEER:  Algoritmo DFS: Explorando la profundidad de los grafos

«`python
import random

clientes = [«Juan», «Ana», «Pedro», «Laura»]

descuentos = {cliente: random.randint(1, 10) for cliente in clientes}

print(descuentos) # Imprime: {‘Juan’: 7, ‘Ana’: 3, ‘Pedro’: 9, ‘Laura’: 5}
«`

En este ejemplo, se crea un diccionario descuentos donde la clave es el nombre del cliente y el valor es un número aleatorio entre 1 y 10, generado por random.randint(1, 10).

2. Temperaturas Semanales

Digamos que tenemos dos listas: una con los días de la semana y otra con las temperaturas correspondientes. Podemos usar la comprensión de diccionarios python para crear un diccionario de temperaturas semanales:

«`python
dias = [«Lunes», «Martes», «Miércoles», «Jueves», «Viernes», «Sábado», «Domingo»]
temperaturas = [25, 28, 22, 20, 26, 29, 30]

temperaturas_semanales = {dia: temp for dia, temp in zip(dias, temperaturas)}

print(temperaturas_semanales) # Imprime: {‘Lunes’: 25, ‘Martes’: 28, ‘Miércoles’: 22, ‘Jueves’: 20, ‘Viernes’: 26, ‘Sábado’: 29, ‘Domingo’: 30}
«`

Aquí, zip(dias, temperaturas) crea iterables de pares, y la comprensión de diccionarios python los utiliza para crear el diccionario temperaturas_semanales.

3. Filtrar un Diccionario Existente

Imaginemos que tenemos un diccionario de clientes y sus descuentos, y queremos crear un nuevo diccionario con los clientes que recibieron un descuento menor a $30. Podemos usar la comprensión de diccionarios python con una condición:

«`python
clientes_descuentos = {«Juan»: 25, «Ana»: 35, «Pedro»: 15, «Laura»: 40}

clientesdescuentosmenores = {cliente: descuento for cliente, descuento in clientes_descuentos.items() if descuento < 30}

print(clientesdescuentosmenores) # Imprime: {‘Juan’: 25, ‘Pedro’: 15}
«`

En este caso, se itera sobre el diccionario clientes_descuentos utilizando items(), y se crea un nuevo diccionario clientes_descuentos_menores donde solo se incluyen los clientes que cumplen con la condición descuento < 30.

Resumen

La comprensión de diccionarios python es una herramienta poderosa para crear nuevos diccionarios python a partir de iterables existentes. Permite crear diccionarios con una sintaxis concisa, utilizando una condición opcional para filtrar los pares clave-valor. Con esta técnica, podemos crear diccionarios python personalizados de forma rápida y eficiente, lo que facilita el manejo de datos y la manipulación de información.

LEER:  Códigos Binarios: La Base de la Computación