Lección 05 · 02 Listas, bucles y funciones

Listas: muchos datos en una variable

Una lista guarda varios valores en orden. Es la forma natural de representar una bandeja de correos, una columna de una hoja de cálculo o un lote de prompts.

Crear y leer

Se escribe entre corchetes, separando por comas. Cada elemento tiene una posición que empieza en 0:

correos = ["[email protected]", "[email protected]", "[email protected]"]
print(correos[0])    # el primero
print(correos[-1])   # el último
print(len(correos))  # cuántos hay

Cambiar la lista

tareas = ["revisar contrato"]
tareas.append("enviar factura")   # añade al final
tareas.insert(0, "leer correo")   # añade en una posición
tareas.remove("revisar contrato") # quita por valor
print(tareas)

Trozos (slices) y orden

lista[a:b] devuelve los elementos desde la posición a hasta antes de b:

notas = [7, 4, 9, 6, 8]
print(notas[:3])            # los tres primeros
print(sorted(notas))        # copia ordenada
print(max(notas), min(notas), sum(notas))
print(9 in notas)
// reto 01

Los tres más recientes

mensajes está ordenada del más antiguo al más reciente. Guarda en recientes los tres últimos e imprímelos.

main.py
Ctrl/⌘ + Enter
¿Atascado? Ver pista

Con índices negativos: mensajes[-3:] son los tres últimos.

$ python main.py
    // reto 02

    Nota media

    Calcula en media la media de notas (suma entre número de notas) e imprímela redondeada a 1 decimal.

    main.py
    Ctrl/⌘ + Enter
    ¿Atascado? Ver pista

    sum(notas) / len(notas).

    $ python main.py
      // reto 03

      Añade si no está

      Añade "[email protected]" a la lista bloqueados solo si no está ya. Ejecuta dos veces la misma comprobación y que no quede repetido. Imprime la lista.

      main.py
      Ctrl/⌘ + Enter
      ¿Atascado? Ver pista
      if nuevo not in bloqueados:
          bloqueados.append(nuevo)
      $ python main.py