Generar Password

Ahora se va generar un contraseña de 8 dígitos que posteriormente con los datos capturados se insertará en mysql. Escribimos el siguiente código
 
   
 import tkinter as tk
import secrets
import string
from tkinter import font, ttk
from tkinter import messagebox as mb


# Definir la función que se ejecutará cuando se haga clic en el botón
def enviar_password():
    if len(nombre.get().strip()) and len(apellidoPaterno.get().strip())\
            and len(email.get().strip()) and len(whatsapp.get().strip()):
        password=Generar_password()
        mb.showinfo("Información", f"La contraseña {password} fue enviada")
    else:
        mb.showerror("Error","Campo vacío")

def Generar_password():
    letters = string.ascii_letters
    digits = string.digits
    special_chars = string.punctuation
    alphabet = letters + digits + special_chars
    pwd_length = 8
    pwd = ''
    for i in range(pwd_length):
        pwd += ''.join(secrets.choice(alphabet))

    return  pwd







# Crear la ventana principal
ventana = tk.Tk()

ventana.title("SendKeyGen")
ventana.geometry("500x600")


label = tk.Label(ventana, text="Sendkeygen")
label.pack(anchor="center")
label.config(fg="white",    # Foreground
             bg="gray",   # Background
             font=("Verdana",24))

# Crear los widgets del formulario
labelNombre=tk.Label(ventana, text="Nombre:")
labelNombre.pack(anchor="nw")
labelNombre.config(fg="white",    # Foreground
             bg="gray",   # Background
             font=("Verdana",14))
nombre = ttk.Entry(font=font.Font(family="Times", size=14),width=50)
nombre.pack(anchor="nw")

labelNombre=tk.Label(ventana, text="Apellido Paterno:")
labelNombre.pack(anchor="nw")
labelNombre.config(fg="white",    # Foreground
             bg="gray",   # Background
             font=("Verdana",14))
apellidoPaterno = ttk.Entry(font=font.Font(family="Times", size=14),width=50)
apellidoPaterno.pack(anchor="nw")

labelNombre=tk.Label(ventana, text="Apellido Materno:")
labelNombre.pack(anchor="nw")
labelNombre.config(fg="white",    # Foreground
             bg="gray",   # Background
             font=("Verdana",14))
apellidoMaterno = ttk.Entry(font=font.Font(family="Times", size=14),width=50)
apellidoMaterno.pack(anchor="nw")

labelNombre=tk.Label(ventana, text="Email:")
labelNombre.pack(anchor="nw")
labelNombre.config(fg="white",    # Foreground
             bg="gray",   # Background
             font=("Verdana",14))
email = ttk.Entry(font=font.Font(family="Times", size=14),width=50)
email.pack(anchor="nw")


labelNombre=tk.Label(ventana, text="WhatsApp:")
labelNombre.pack(anchor="nw")
labelNombre.config(fg="white",    # Foreground
             bg="gray",   # Background
             font=("Verdana",14))
whatsapp = ttk.Entry(font=font.Font(family="Times", size=14),width=15)
whatsapp.pack(anchor="nw")

labelNombre=tk.Label(ventana, text="Puesto:")
labelNombre.pack(anchor="nw")
labelNombre.config(fg="white",    # Foreground
             bg="gray",   # Background
             font=("Verdana",14))
puesto = ttk.Combobox(values=["Administrador", "Gerente", "Empleado"], font=font.Font(size=15))
puesto.current(0)
puesto.pack(anchor="nw")

boton_enviar = tk.Button(ventana, text="Enviar Password", command=enviar_password,
                         width=30, height=5,bg="gray",fg="white",font=("Comic Sans", 10,"bold"))
boton_enviar.pack(anchor="center")

# Mostrar la ventana
ventana.mainloop()          
          
      
   


Generando la contraseña

phyton project
Se va modificar hasta llegar al resultado final.