Semana 3 de 8
Entrada e interacción
Los programas empiezan a escuchar. Los estudiantes usan input() para hacerle una pregunta al jugador, esperar la respuesta y usarla en lo que el programa contesta. Al final tienen un chatbot corto que responde a lo que escribas.
- Tiempo estimado
- 50-60 minutos
- Proyecto
- Mini chatbot
La idea
input() es la forma en que un programa escucha. Muestra un mensaje, luego se detiene y espera a que el jugador escriba y presione Enter. Su respuesta se guarda en una variable, así que el programa puede usarla (su nombre, su adivinanza, su elección) en lo que haga después. Ten en cuenta: input() siempre devuelve texto.
Lo que vas a aprender
- Usar input() para obtener una respuesta de quien ejecuta el programa.
- Guardar una respuesta en una variable y usarla después.
- Explicar que el programa se detiene en input() hasta que el usuario escribe algo.
- Arreglar una línea input() a la que le faltan las comillas.
Palabras nuevas
- input()
- Un comando de Python que hace una pregunta y espera a que el usuario escriba una respuesta.
- mensaje
- El texto que input() muestra para decirle al usuario qué escribir.
- usuario
- La persona que usa el programa; en un juego, el jugador.
Proyecto: Mini chatbot
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
¿Cómo te llamo? Alex
Mucho gusto, Alex.
¿Qué juego te gusta ahorita? futbol
¿futbol? Buena elección. Pronto construiremos uno nuestro.Mini desafío
Agrega una pregunta más, tal vez su color o animal favorito, y usa la respuesta en la contestación del programa.
Desafío de depuración
Ejecutar esto provoca un error antes de que siquiera aparezca la pregunta. El mensaje dentro de input() es texto para que lo lea el usuario. ¿Qué necesita alrededor todo texto?
Código con errores
nombre = input(¿Cómo te llamo? )Ver soluciónOcultar solución
El mensaje es texto, así que necesita comillas:
nombre = input("¿Cómo te llamo? ")Desafío de extensión
Pide el nombre del jugador y su juego favorito, luego imprime una frase que use los dos, como: ¡Alex está listo para jugar futbol!
Reflexiona
La semana pasada tu programa siempre decía lo mismo. Ahora te responde. ¿Qué podrías preguntarle a un jugador al inicio de un juego para que sienta que es sobre él?
Notas para docentes
input() siempre devuelve texto, incluso cuando el usuario escribe un número: eso se vuelve importante en la Semana 5, donde comparamos números y usamos int(). Vigila las comillas faltantes alrededor del mensaje. En el área de trabajo, tanto el mensaje como la respuesta escrita aparecen en el panel de salida, así que la salida esperada muestra una conversación de ejemplo.
¿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.