import tkinter as tk
from tkinter import scrolledtext

def enviar_mensaje():
    mensaje = entrada.get()
    if mensaje.strip():
        chat.insert(tk.END, f"Tú: {mensaje}\n")
        respuesta = generar_respuesta(mensaje)
        chat.insert(tk.END, f"Bot: {respuesta}\n")
    entrada.delete(0, tk.END)

def generar_respuesta(mensaje):
    mensaje = mensaje.lower().strip()

    # Lógica básica para responder preguntas sobre Python
    if "qué es python" in mensaje:
        return "Python es un lenguaje de programación interpretado, fácil de aprender y muy versátil."
    elif "para qué sirve python" in mensaje:
        return "Python se usa en desarrollo web, ciencia de datos, automatización, inteligencia artificial y más."
    elif "cómo crear una función" in mensaje:
        return "Puedes crear una función en Python usando la palabra clave 'def'. Ejemplo:\n\ndef mi_funcion():\n    print('Hola mundo')"
    elif "qué es una lista" in mensaje:
        return "Una lista en Python es una colección ordenada y mutable de elementos. Se define con corchetes []."
    elif "cómo hacer un bucle" in mensaje:
        return "Puedes usar 'for' o 'while'. Ejemplo:\nfor i in range(5):\n    print(i)"
    else:
        return "Lo siento, no entendí tu pregunta. ¿Puedes reformularla o preguntar algo sobre Python?"

# Interfaz gráfica
ventana = tk.Tk()
ventana.title("Chatbox con Tkinter")

chat = scrolledtext.ScrolledText(ventana, wrap=tk.WORD, width=50, height=20)
chat.pack(padx=10, pady=10)
chat.config(state=tk.NORMAL)

entrada = tk.Entry(ventana, width=40)
entrada.pack(padx=10, pady=5)

boton_enviar = tk.Button(ventana, text="Enviar", command=enviar_mensaje)
boton_enviar.pack(padx=10, pady=5)

ventana.mainloop()


