ELIZA I: hacer preguntas
Hacer preguntas es una gran forma de crear una conversación interesante. Aquí vas a crear el primer rasgo de la famosa personalidad de ELIZA, respondiendo a afirmaciones con una pregunta y a preguntas con respuestas.
Ya tienes definido un diccionario de respuestas con "question" y "statement" como claves y listas de respuestas adecuadas como valores. Explóralo en la Shell con responses.keys() y responses["question"].
Este ejercicio forma parte del curso
Creación de chatbots en Python
Instrucciones del ejercicio
- Define una función
respond()que recibamessagecomo argumento y use el método.endswith()de las cadenas para comprobar simessagetermina con un signo de interrogación. - Si
messagetermina con un signo de interrogación, elige aleatoriamente una"question"del diccionarioresponses. En caso contrario, elige aleatoriamente una"statement"deresponses. - Envía varios mensajes al bot con y sin signo de interrogación; ya están preparados para ti. Si quieres seguir probando en la Shell, asegúrate de pulsar primero "Run Code".
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
import random
def respond(message):
# Check for a question mark
if ____:
# Return a random question
return ____(____["____"])
# Return a random statement
return ____(____["____"])
# Send messages ending in a question mark
send_message("what's today's weather?")
send_message("what's today's weather?")
# Send messages which don't end with a question mark
send_message("I love building chatbots")
send_message("I love building chatbots")