Listas y diccionarios

Lectura
25min~4 min lectura

📚 Listas y Diccionarios en Python

En Python, las listas y los diccionarios son dos de las estructuras de datos más importantes y utilizadas. Permiten almacenar colecciones de datos de manera organizada y accesible. Dominar estas estructuras es fundamental para cualquier programador que trabaje con Python.

¿Qué son las Listas?

Una lista es una colección ordenada y mutable de elementos. Puedes pensar en ella como una fila de cajas numeradas, donde cada caja contiene un valor. Las listas se definen usando corchetes [] y los elementos se separan por comas.

💡 Recuerda: Las listas en Python pueden contener elementos de diferentes tipos de datos (números, cadenas, booleanos, e incluso otras listas).

Creando y manipulando listas

  1. Crear una lista:
    frutas = ["manzana", "banana", "cereza"]
    numeros = [1, 2, 3, 4, 5]
  2. Acceder a elementos:
    primera_fruta = frutas[0] # "manzana"
    ultimo_numero = numeros[-1] # 5
  3. Modificar elementos:
    frutas[1] = "uva"
    numeros.append(6) # Agrega al final
  4. Eliminar elementos:
    frutas.remove("manzana") # Por valor
    del numeros[0] # Por índice

Métodos principales de las listas

Método Descripción Ejemplo
append() Agrega un elemento al final lista.append(7)
insert() Inserta en una posición específica lista.insert(0, "inicio")
remove() Elimina la primera ocurrencia lista.remove(3)
pop() Elimina y retorna un elemento lista.pop(-1)
sort() Ordena la lista lista.sort()
len() Retorna la longitud len(lista)

¿Qué son los Diccionarios?

Un diccionario es una colección de pares clave-valor, desordenada y mutable. Cada elemento tiene una clave única y un valor asociado. Se definen usando llaves {} con la sintaxis clave: valor.

🎯 Diferencia clave: Mientras que las listas acceden a elementos por su posición (índice), los diccionarios acceden a elementos por su clave. Esto hace que los diccionarios sean ideales para representar datos estructurados como registros.

Creando y manipulando diccionarios

  1. Crear un diccionario:
    persona = {"nombre": "Ana", "edad": 28, "ciudad": "Madrid"}
  2. Acceder a valores:
    nombre = persona["nombre"] # "Ana"
    edad = persona.get("edad") # 28 (más seguro)
  3. Agregar o modificar:
    persona["profesion"] = "Ingeniera"
    persona["edad"] = 29 # Modifica existente
  4. Eliminar elementos:
    del persona["ciudad"]
    profesion = persona.pop("profesion")
  5. Iterar sobre el diccionario:
    for clave in persona:
        print(clave, persona[clave])

Métodos principales de los diccionarios

Método Descripción Ejemplo
keys() Retorna todas las claves persona.keys()
values() Retorna todos los valores persona.values()
items() Retorna pares clave-valor persona.items()
get() Obtiene valor con clave (evita errores) persona.get("edad")
update() Actualiza con otro diccionario persona.update({"pais": "España"})
clear() Elimina todos los elementos persona.clear()
⚠️ Precaución: Las claves de un diccionario deben ser inmutables (strings, números, tuplas). No puedes usar listas como claves porque son mutables.

Ejemplo práctico combinado

# Lista de diccionarios: una base de datos simple
estudiantes = [
    {"nombre": "Carlos", "materias": ["Matemáticas", "Física"]},
    {"nombre": "María", "materias": ["Historia", "Arte"]},
    {"nombre": "Luis", "materias": ["Química", "Biología"]}
]

# Acceder al segundo estudiante y su primera materia
print(estudiantes[1]["nombre"])        # María
print(estudiantes[1]["materias"][0])   # Historia

# Agregar una nueva materia a Carlos
estudiantes[0]["materias"].append("Programación")
print(estudiantes[0]["materias"])  # ["Matemáticas", "Física", "Programación"]
💡 Consejo profesional: Combinar listas y diccionarios es muy común en Python. Una lista de diccionarios es perfecta para representar tablas de datos, mientras que los diccionarios pueden contener listas como valores para datos más complejos.

📝 Pregunta de práctica

¿Cuál sería el resultado de ejecutar este código?

datos = {"a": [1, 2, 3], "b": [4, 5, 6]}
print(datos["a"][1] + datos["b"][2])

Respuesta correcta: 8 (suma 2 + 6)

Resumen

Las listas y los diccionarios son herramientas fundamentales en Python:

  • Las listas son ideales para colecciones ordenadas donde el orden importa y accedes por índice.
  • Los diccionarios son perfectos para datos estructurados donde accedes por claves descriptivas.
  • Ambas estructuras son mutables: puedes agregar, modificar y eliminar elementos.Puedes combinarlas para crear estructuras de datos complejas y poderosas.

🏆 Domina estas estructuras y tendrás una base sólida para trabajar con cualquier tipo de datos en Python. ¡La práctica es la clave!