Saltar al contenido

Lección 10 de 12 · Lectura y práctica

Listas y diccionarios

📚 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.

Del concepto a la práctica

Taller de esta lección

Una lista organiza varios elementos y un diccionario describe un elemento mediante claves. Combinarlos resulta útil cuando cada libro tiene atributos distintos, pero la colección conserva un orden.

Ejemplo resuelto

python
libros = [
    {"titulo": "Río", "paginas": 30},
    {"titulo": "Norte", "paginas": 45},
]
print(libros[1]["titulo"])
print(sum(libro["paginas"] for libro in libros))

La salida es Norte y 75. El índice 1 selecciona el segundo diccionario y la clave paginas obtiene su valor.

Pruébalo

  1. Crea dos diccionarios con las mismas claves.

  2. Colócalos dentro de una lista.

  3. Accede al segundo título mediante índice y clave.

  4. Recorre la lista para sumar páginas.

Un error frecuente es usar libros["titulo"]; la lista no tiene claves de texto. Corrección: selecciona primero un elemento, como libros[0], y después su clave.

Ejercicio: añade {"titulo": "Sur", "paginas": 20}.

Comprueba tu resultado

la suma pasa de 75 a 95 y libros[2]["titulo"] produce Sur.

Diagrama de decisión con ramas Sí y No y un bucle que procesa cada elemento de una lista.
CursaloMapa de práctica
Cómo avanza un programa

Una condición decide qué camino ejecuta el programa. Un bucle repite una operación mientras queden elementos, y termina cuando la lista se agota. Separar ambas ideas ayuda a seguir el flujo y comprobar casos límite.

Ver la infografía en tamaño completo ↗

📚 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!

Sigue con Introducción a Python

Esta lección forma parte de un curso de Cursalo. Revisa su programa y elige entre la compra individual o el acceso a toda la escuela.

Si ya tenías acceso a este curso, entra con tu cuenta: tus derechos y tu progreso se conservan. No necesitas comprarlo de nuevo.

01 / ELEGIR UNA RUTA

El próximo paso

Aprende IA mientras construyes algo que sí necesitas.

Empieza por el curso inicial o explora el catálogo para encontrar una práctica alineada con tu trabajo.