Listas y diccionarios: tus primeras estructuras de datos
Listas para colecciones ordenadas y diccionarios para pares clave-valor: cuándo usar cada uno y cómo recorrerlos.
Una variable normal guarda un solo valor. Pero casi siempre tendrás que manejar muchos: una lista de la compra, los datos de una persona, los resultados de una búsqueda. Para eso están las estructuras de datos. Las dos más importantes son las listas y los diccionarios.
Listas: una colección ordenada
Una lista guarda valores en orden, y cada uno tiene una posición (índice) que empieza en 0.
frutas = ["manzana", "pera", "uva"]
print(frutas[0]) # manzana
frutas.append("kiwi") # añade al final
print(len(frutas)) # 4
En JavaScript se llaman arrays:
const frutas = ["manzana", "pera", "uva"];
console.log(frutas[0]); // manzana
frutas.push("kiwi");
console.log(frutas.length); // 4
Para recorrerlas se usa un bucle:
for fruta in frutas:
print(fruta)
Diccionarios: pares clave-valor
Cuando quieres buscar por un nombre y no por una posición, usas un diccionario. Cada clave apunta a un valor.
persona = {"nombre": "Ana", "edad": 30, "ciudad": "Sevilla"}
print(persona["nombre"]) # Ana
persona["edad"] = 31 # modificar
persona["email"] = "ana@ejemplo.com" # añadir
En JavaScript se llaman objetos y se escriben casi igual:
const persona = { nombre: "Ana", edad: 30, ciudad: "Sevilla" };
console.log(persona.nombre);
persona.edad = 31;
Cuándo usar cada uno
| Necesitas… | Usa… |
|---|---|
| Una colección en orden (tareas, nombres, números) | Lista / array |
| Acceder a un dato por su nombre (ficha de una persona) | Diccionario / objeto |
| Muchos elementos de la misma forma | Una lista de diccionarios |
Es muy habitual combinarlos: una lista de personas, donde cada persona es un diccionario. Esa es, además, la forma de los datos JSON que devuelven las APIs: pega uno en el formateador de JSON para verlo claro, y lee qué es una API y JSON.
Errores típicos
- Índice fuera de rango: pedir
frutas[10]en una lista de 4 elementos da error. Recuerda que el último índice eslen - 1. - Clave inexistente:
persona["telefono"]falla si no existe. En Python,persona.get("telefono")devuelveNoneen lugar de fallar. - Confundir el índice 0 con el 1. El primer elemento es el 0.
- Modificar mientras recorres una lista puede dar resultados inesperados; es más seguro crear una nueva.
Con estas estructuras y las funciones puedes escribir programas bastante útiles. Si te atascas, la guía de depuración te enseña a localizar fallos.
Fuentes consultadas
- Estructuras de datos (Tutorial de Python) (Python Software Foundation)
- Colecciones con clave - Guía de JavaScript (MDN Web Docs)
