Semana 7 de 8
Listas y azar
Los programas se vuelven impredecibles. Los estudiantes guardan varios valores en una lista y usan random.choice() para elegir uno al azar, así que el programa hace algo distinto en cada ejecución. Construyen un juego corto de aventura cuyo camino y premio cambian cada vez, y conocen import por primera vez, porque ahora sí lo necesitan.
- Tiempo estimado
- 60 minutos
- Proyecto
- Juego de aventura aleatorio
La idea
Una lista guarda muchos valores en una sola variable, escritos entre corchetes. random.choice() mete la mano en una lista y saca un elemento al azar, así que el programa puede sorprender al jugador. Para usar random primero lo traes con import random arriba: la primera vez que necesitas una herramienta que no viene incorporada. Las listas más el azar son lo que hace que un juego se sienta distinto cada vez que lo juegas.
Lo que vas a aprender
- Crear una lista y leer elementos de ella.
- Usar random.choice() para elegir un elemento al azar de una lista.
- Explicar por qué import random tiene que ir primero.
- Arreglar un programa que usa random sin importarlo.
Palabras nuevas
- lista
- Una colección ordenada de valores dentro de corchetes, como ["a", "b", "c"].
- elemento
- Un valor guardado en una lista.
- import
- Trae herramientas extra que Python no carga por defecto, como el módulo random.
- random.choice()
- Elige al azar un elemento de una lista.
Proyecto: Juego de aventura aleatorio
Edita el código inicial de abajo y presiona Ejecutar para verlo funcionar. Usa Restablecer código inicial para volver al original cuando quieras.
Ejecuta tu programa para ver la salida.
Resultado esperado
Te metes por una cueva silenciosa.
Al final, encuentras un mapa viejo.Mini desafío
Agrega una tercera lista de personajes que el jugador se encuentra en el camino, elige uno al azar e imprime una línea sobre él.
Desafío de depuración
Python dice que random no está definido. Este programa usa random.choice(), pero random es una herramienta que hay que traer primero. ¿Qué única línea va hasta arriba?
Código con errores
caminos = ["un bosque oscuro", "una cueva silenciosa"]
camino = random.choice(caminos)
print(camino)Ver soluciónOcultar solución
Trae la herramienta random hasta arriba:
import randomDesafío de extensión
Pregunta el nombre del jugador con input() al inicio y luego úsalo en la historia aleatoria para que la aventura se sienta suya.
Reflexiona
Dos jugadores ejecutan esto y obtienen historias distintas. ¿Por qué eso hace que un juego sea más divertido de jugar más de una vez?
Notas para docentes
Como la salida es aleatoria, la salida esperada es solo un ejemplo: las ejecuciones van a variar, y ese es justo el punto. Refuerza que import va hasta arriba. Las listas se indexan desde 0, pero random.choice() hace que los estudiantes todavía no necesiten índices; mantén el foco en elegir de una lista.
¿Vas a dirigir esta lección? Consulta la guía para docentes y bibliotecarios para saber cómo darla, los errores más comunes y una actividad de respaldo sin computadora.
¿Terminaste esta lección? Márcala como completada para desbloquear la siguiente semana.