Lección 7 · Estructuras

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

  1. Crea una lista con 5 frutas e imprime la primera y la última.
  2. Agrega 3 números a una lista vacía usando append().
  3. Elimina el último elemento con pop() e imprime la lista.
  4. Recorre una lista de nombres e imprime “Hola, NOMBRE”.
  5. Suma todos los números de una lista.
  6. Calcula el promedio de una lista de notas.
  7. Encuentra el mayor número en una lista (sin max, usando for).
  8. Cuenta cuántas veces aparece un valor (sin count, usando for).
  9. Crea una nueva lista con los números pares de otra lista.
  10. 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().