Lección 7: Listas
🎯 Objetivo
Crear listas, acceder por índice, recorrerlas y usar métodos básicos como append(), remove(), pop() y len().
📘 Explicación
Una lista guarda varios valores en una sola variable, en un orden. Se accede por índice empezando en 0.
Las listas son perfectas para almacenar notas, nombres, precios, etc.
🔑 Conceptos clave
- Crear:
nums = [1,2,3] - Índices: el primero es 0
- len(): cantidad de elementos
- Métodos: append/remove/pop
🧩 Ejemplos
Ejemplo 1: Crear y acceder
nums = [10, 20, 30]
print(nums[0])
print(nums[-1])
Ejemplo 2: Agregar y eliminar
lista = []
lista.append("A")
lista.append("B")
print(lista)
lista.pop()
print(lista)
Ejemplo 3: Recorrer con for
nombres = ["Ana","Luis","Marta"]
for n in nombres:
print(n)
Ejemplo 4: Slicing (rebanadas)
a = [1,2,3,4,5]
print(a[1:4])
print(a[:3])
print(a[::2])
Ejemplo 5: Acumulación con lista — sum y len ayudan.
notas = [8, 9, 7]
prom = sum(notas) / len(notas)
print(prom)
🧪 Ejercicios propuestos
- Crea una lista con 5 frutas e imprime la primera y la última.
- Agrega 3 números a una lista vacía usando append().
- Elimina el último elemento con pop() e imprime la lista.
- Recorre una lista de nombres e imprime “Hola, NOMBRE”.
- Suma todos los números de una lista.
- Calcula el promedio de una lista de notas.
- Encuentra el mayor número en una lista (sin max, usando for).
- Cuenta cuántas veces aparece un valor (sin count, usando for).
- Crea una nueva lista con los números pares de otra lista.
- Ordena una lista (usa sort) e imprime el resultado.
✅ Ver soluciones explicadas (10 ejercicios)
Intenta primero. Luego compara con estas soluciones y lee la explicación.
Ejercicio 1: Crea una lista con 5 frutas e imprime la primera y la última.
frutas = ["manzana","pera","uva","mango","banana"]
print(frutas[0])
print(frutas[-1])
Explicación: Indices 0 y -1.
Ejercicio 2: Agrega 3 números a una lista vacía usando append().
nums = []
nums.append(5)
nums.append(10)
nums.append(15)
print(nums)
Explicación: append agrega al final.
Ejercicio 3: Elimina el último elemento con pop() e imprime la lista.
nums = [1,2,3]
nums.pop()
print(nums)
Explicación: pop() sin índice quita el último.
Ejercicio 4: Recorre una lista de nombres e imprime “Hola, NOMBRE”.
nombres = ["Ana","Luis","Marta"]
for n in nombres:
print(f"Hola, {n}")
Explicación: for recorre elementos.
Ejercicio 5: Suma todos los números de una lista.
nums = [2,4,6]
print(sum(nums))
Explicación: sum() suma elementos numéricos.
Ejercicio 6: Calcula el promedio de una lista de notas.
notas = [8, 7, 10, 9]
prom = sum(notas) / len(notas)
print(prom)
Explicación: Suma / cantidad.
Ejercicio 7: Encuentra el mayor número en una lista (sin max, usando for).
nums = [3, 10, 7]
mayor = nums[0]
for n in nums:
if n > mayor:
mayor = n
print(mayor)
Explicación: Comparas y actualizas.
Ejercicio 8: Cuenta cuántas veces aparece un valor (sin count, usando for).
nums = [1,2,1,3,1]
objetivo = 1
c = 0
for n in nums:
if n == objetivo:
c += 1
print(c)
Explicación: Contador.
Ejercicio 9: Crea una nueva lista con los números pares de otra lista.
nums = [1,2,3,4,5,6]
pares = []
for n in nums:
if n % 2 == 0:
pares.append(n)
print(pares)
Explicación: Filtrado con if.
Ejercicio 10: Ordena una lista (usa sort) e imprime el resultado.
nums = [4,1,3,2]
nums.sort()
print(nums)
Explicación: sort() ordena en sitio.
⚠️ Errores comunes
- Acceder fuera de rango: si lista tiene 3 elementos, índice máximo es 2.
- Modificar lista mientras recorres sin cuidado (para básico: mejor evitar).
- Olvidar validar lista vacía antes de dividir por len().