Logo de CursoIA
CursoIA Curso de Inteligencia Artificial

Python desde cero - enfoque científico, Unidad 4 — Estructuras de datos fundamentales, 4.3 — Diccionarios ·

Acceso y modificación

Acceso y modificación de diccionarios

Introducción

Los diccionarios son una estructura de datos fundamental en Python, especialmente valiosa para la ciencia de datos e inteligencia artificial. Los diccionarios permiten almacenar y acceder a datos utilizando claves únicas, lo que facilita el manejo de grandes cantidades de información de manera eficiente. A diferencia de las listas, donde los elementos se indexan con números enteros secuenciales, en un diccionario se puede usar cualquier tipo de dato inmutable como clave, lo que ofrece una gran flexibilidad.

Explicación principal

Un diccionario es una colección no ordenada y mutable de pares clave-valor. Cada elemento está formado por una clave única (que debe ser inmutable) y un valor asociado (que puede ser cualquier tipo). A continuación, veremos cómo se accede a los elementos de un diccionario y cómo modificarlos.

Creación y acceso

Para crear un diccionario en Python, utilizamos llaves {} con pares clave-valor separados por comas. Por ejemplo:

# Creación de un diccionario simple
diccionario = {
    "nombre": "Juan",
    "edad": 30,
    "ciudad": "Madrid"
}

# Accediendo a los elementos del diccionario
print(diccionario["nombre"])  # Salida: Juan
print(diccionario["edad"])   # Salida: 30

Modificación de valores

Para modificar el valor asociado con una clave existente, simplemente asignamos un nuevo valor a esa clave:

# Modificando un valor en el diccionario
diccionario["edad"] = 31
print(diccionario)  # Salida: {'nombre': 'Juan', 'edad': 31, 'ciudad': 'Madrid'}

Agregar nuevas claves

Si intentamos acceder a una clave que no existe en el diccionario, obtendremos un KeyError. Para agregar una nueva clave, simplemente asignamos un valor a esa clave:

# Agregando una nueva clave al diccionario
diccionario["profesion"] = "Ingeniero"
print(diccionario)  # Salida: {'nombre': 'Juan', 'edad': 31, 'ciudad': 'Madrid', 'profesion': 'Ingeniero'}

Ejemplo completo

Vamos a combinar todas estas operaciones en un ejemplo completo:

# Creación del diccionario inicial
diccionario = {
    "nombre": "Juan",
    "edad": 30,
    "ciudad": "Madrid"
}

print("Diccionario original:")
for clave, valor in diccionario.items():
    print(f"{clave}: {valor}")

# Modificación de una clave existente
diccionario["edad"] = 31

# Agregando una nueva clave
diccionario["profesion"] = "Ingeniero"

print("\nDiccionario después de modificaciones:")
for clave, valor in diccionario.items():
    print(f"{clave}: {valor}")

Errores típicos / trampas

  1. Acceso a claves inexistentes: Intentar acceder a una clave que no existe en el diccionario generará un KeyError. Para evitar esto, puede usar la función get() o verificar si la clave existe antes de intentar acceder:
   # Usando get() para evitar KeyError
   valor = diccionario.get("edad2", "Clave no encontrada")
   print(valor)  # Salida: Clave no encontrada

   # Verificar existencia de clave antes de acceso
   if "edad2" in diccionario:
       print(diccionario["edad2"])
  1. Modificación de claves inexistentes: Intentar modificar una clave que no existe en el diccionario no generará ningún error, pero tampoco modificará nada. Para agregar una nueva clave, asegúrate de usar asignación:
   # Añadir clave y valor
   diccionario["edad3"] = 25  # Esto es correcto
   print(diccionario)  # Salida: {'nombre': 'Juan', 'edad': 31, 'ciudad': 'Madrid', 'profesion': 'Ingeniero', 'edad3': 25}

   # Intentar modificar clave inexistente (no genera error)
   diccionario["edad4"] = "No existe"
   print(diccionario)  # Salida: {'nombre': 'Juan', 'edad': 31, 'ciudad': 'Madrid', 'profesion': 'Ingeniero', 'edad3': 25}
  1. Claves mutables: Asegúrate de que las claves usadas en un diccionario sean inmutables. En Python, las tuplas son inmutables y pueden ser claves válidas, pero los conjuntos o listas no lo son:
   # Uso incorrecto (fallará)
   conjunto_clave = {"edad", 25}
   diccionario[conjunto_clave] = "Error"

   # Uso correcto (funcionará)
   tupla_clave = ("edad", 25)
   diccionario[tupla_clave] = "Correcto"

Checklist accionable

  1. Usa get() para evitar errores de clave no encontrada.
  2. Verifica la existencia de una clave antes de modificarla.
  3. Asegúrate de que las claves usadas sean inmutables (tuplas, números, cadenas).
  4. Evita el uso de listas como claves en diccionarios.
  5. Utiliza items() para iterar sobre todas las claves y valores del diccionario.

Siguientes pasos

  • Revisar la documentación oficial de Python: La documentación detallada de Python ofrece una visión más profunda de cómo trabajar con diccionarios.
  • Practicar ejercicios de manipulación de diccionarios: Puedes encontrar muchos ejemplos y ejercicios en plataformas como Codecademy o HackerRank.
  • Aplicar diccionarios a análisis de datos: Utiliza diccionarios para manejar datos no estructurados o para mapear relaciones entre diferentes tipos de datos.

Aprender a utilizar eficazmente los diccionarios en Python es un paso crucial hacia el dominio del lenguaje y su aplicación en ciencia de datos e inteligencia artificial.

Contacto

Indica tu objetivo (ChatGPT, RAG, agentes, automatización) y tu stack (web/backend).