Python Básico para Fútbol

Módulo 4: Listas - Tu primera convocatoria

La pizarra del entrenador: manejando grupos de datos

En el módulo anterior, aprendimos a usar variables, que son como las fichas individuales de los jugadores. Pero un equipo no es un solo jugador, es un colectivo. ¿Cómo manejamos a toda la plantilla en nuestro código? La respuesta es una de las estructuras de datos más importantes en Python: las listas.

Piensa en una lista como la pizarra donde el entrenador escribe la convocatoria para el próximo partido. Es un único lugar que contiene un conjunto ordenado de elementos, en nuestro caso, los nombres de los jugadores. Este módulo es clave, ya que en el análisis de datos casi siempre trabajamos con colecciones de información, no con datos aislados.

Creando tu primera convocatoria

Crear una lista en Python es increíblemente sencillo. Usamos corchetes [] y separamos cada elemento con una coma. Vamos a crear una lista con los delanteros de un equipo.

Abre tu archivo modulo-4.py en VS Code y escribe lo siguiente:

delanteros = ["Oyarzabal", "Kubo", "Barrenetxea"]

print(delanteros)

Al ejecutar el código, verás que Python imprime la lista completa: ['Oyarzabal', 'Kubo', 'Barrenetxea']. ¡Acabas de crear tu primera plantilla! Una lista puede contener cualquier tipo de dato, aunque lo más común es que todos los elementos sean del mismo tipo (en este caso, todos son texto).

Accediendo a un jugador específico: los dorsales

Una vez que tienes tu convocatoria, necesitas poder referirte a un jugador en particular. En Python, accedemos a los elementos de una lista por su índice, que es su posición.

Aquí viene la parte más importante y que a veces confunde al principio: en programación, casi siempre empezamos a contar desde cero. Por lo tanto, el primer jugador de la lista tiene el índice 0, el segundo tiene el 1, y así sucesivamente. Piensa en ello como los dorsales de entrenamiento, que no siempre coinciden con los oficiales.

Para acceder a un elemento, usamos el nombre de la lista seguido de corchetes con el número del índice.

delanteros = ["Oyarzabal", "Kubo", "Barrenetxea"]

# Accedemos al primer jugador (índice 0)
primer_delantero = delanteros[0]
print("El primer delantero es:", primer_delantero)

# Accedemos al tercer jugador (índice 2)
tercer_delantero = delanteros[2]
print("El tercer delantero es:", tercer_delantero)

Salida:

El primer delantero es: Oyarzabal
El tercer delantero es: Barrenetxea

Modificando la plantilla: fichajes y cesiones

Las convocatorias de un equipo cambian constantemente por lesiones, decisiones técnicas o fichajes. Las listas en Python son “mutables”, lo que significa que podemos modificarlas después de haberlas creado.

Añadir un jugador (un fichaje de última hora): Para añadir un nuevo elemento al final de la lista, usamos el método .append().

delanteros = ["Oyarzabal", "Kubo", "Barrenetxea"]
print("Convocatoria inicial:", delanteros)

# Fichamos a un nuevo jugador
delanteros.append("Sadiq")
print("Convocatoria final:", delanteros)

Salida:

Convocatoria inicial: ['Oyarzabal', 'Kubo', 'Barrenetxea']
Convocatoria final: ['Oyarzabal', 'Kubo', 'Barrenetxea', 'Sadiq']

Eliminar un jugador (una lesión desafortunada): Para eliminar a un jugador, podemos usar el método .remove() y pasarle el nombre exacto del elemento que queremos quitar.

delanteros = ["Oyarzabal", "Kubo", "Barrenetxea", "Sadiq"]
print("Plantilla completa:", delanteros)

# Se lesiona un jugador
delanteros.remove("Kubo")
print("Plantilla tras la lesión:", delanteros)

Salida:

Plantilla completa: ['Oyarzabal', 'Kubo', 'Barrenetxea', 'Sadiq']
Plantilla tras la lesión: ['Oyarzabal', 'Barrenetxea', 'Sadiq']

Un paso fundamental

Dominar las listas es esencial. Son la base para manejar casi cualquier conjunto de datos. Has aprendido a crear una colección de datos, a seleccionar elementos específicos y a modificarla dinámicamente.

En el próximo módulo, daremos un salto lógico: aprenderemos a realizar acciones sobre cada uno de los jugadores de nuestra convocatoria de forma automática usando bucles. Es la forma en que los programadores automatizamos tareas repetitivas.