Objetivo del Código

Vamos a crear un chatbot simple en Python que responde a ciertas frases usando un diccionario predefinido.

Diccionario de respuestas


respuestas = {
    "hola": "¡Hola! ¿En qué puedo ayudarte?",
    "buenos días": "¡Buenos días! Espero que tengas un excelente día.",
    "adiós": "Adiós, ¡espero verte pronto!",
    "bye": "Adiós, ¡cuídate mucho!",
    "tu nombre": "Soy un chatbot creado en Python. Aún no tengo nombre",
    "clima": "No tengo acceso a información en tiempo real, pero podrías consultar el pronóstico en línea."
}
                

Este diccionario asocia palabras clave con respuestas. El chatbot buscará coincidencias exactas en este conjunto.

Función obtener_respuesta


def obtener_respuesta(mensaje):
    mensaje = mensaje.lower()
    if mensaje in respuestas:
        return respuestas[mensaje]
    else:
        return "Lo siento, no entiendo esa pregunta."
                

La función convierte el mensaje a minúsculas y verifica si está en el diccionario. Si no, da una respuesta por defecto.

Inicio de la conversación


print("¡Hola! Soy un chatbot. Escribe 'salir' para terminar la conversación.")
                

Se muestra un mensaje de bienvenida e instrucción para salir del programa escribiendo "salir".

Bucle de conversación


while True:
    usuario = input("Tú: ")
    if usuario.lower() == "salir":
        print("Chatbot: ¡Adiós!")
        break
    respuesta = obtener_respuesta(usuario)
    print("Chatbot:", respuesta)
                

Este bucle permite que el usuario interactúe continuamente con el chatbot hasta escribir "salir".

Ejemplo de interacción


Tú: hola
Chatbot: ¡Hola! ¿En qué puedo ayudarte?

Tú: clima
Chatbot: No tengo acceso a información en tiempo real, pero podrías consultar el pronóstico en línea.

Tú: salir
Chatbot: ¡Adiós!
                

El chatbot responde únicamente a las entradas que están en su diccionario. Para todo lo demás, dice que no entiende.

Conclusión

Este chatbot es ideal para entender los fundamentos de procesamiento de texto, condicionales y uso de diccionarios en Python.