Generation

generate functionThu, 13 Mar 2025

nesecito crear una clase que conlleve usuario idusuario nombre+ correo contraseña rol registrar iniciarsesion cerrarsesion

Aquí te muestro un ejemplo de cómo podrías implementar la clase que necesitas en Python: ```python import getpass import hashlib import os class Usuario: def __init__(self, id_usuario, nombre, correo, contraseña, rol): self.id_usuario = id_usuario self.nombre = nombre self.correo = correo self.contraseña = hashlib.sha256(contraseña.encode()).hexdigest() self.rol = rol self.sesion_activa = False def registrar(self): print(f"Usuario {self.nombre} creado con éxito.") self.sesion_activa = True def iniciar_sesion(self, contraseña_ingresada): contraseña_ingresada = hashlib.sha256(contraseña_ingresada.encode()).hexdigest() if contraseña_ingresada == self.contraseña: self.sesion_activa = True print(f"Bienvenido, {self.nombre}.") else: print("Contraseña incorrecta.") def cerrar_sesion(self): self.sesion_activa = False print(f"Sesión cerrada para {self.nombre}.") def __str__(self): return f"ID Usuario: {self.id_usuario}\nNombre: {self.nombre}\nCorreo: {self.correo}\nRol: {self.rol}\nSesión activa: {self.sesion_activa}" # Ejemplo de uso usuario = Usuario(1, "Juan Pérez", "juan.perez@example.com", "contraseña123", "Administrador") print(usuario) usuario.registrar() contraseña_ingresada = getpass.getpass("Ingrese la contraseña para iniciar sesión: ") usuario.iniciar_sesion(contraseña_ingresada) print(usuario) usuario.cerrar_sesion() print(usuario) ``` En este ejemplo, la clase `Usuario` tiene los siguientes atributos: * `id_usuario`: un identificador único para cada usuario. * `nombre`: el nombre del usuario. * `correo`: el correo electrónico del usuario. * `contraseña`: la contraseña del usuario, almacenada en forma de hash SHA-256 para seguridad. * `rol`: el rol del usuario (por ejemplo, Administrador, Usuario, etc.). * `sesion_activa`: un flag que indica si la sesión del usuario está activa o no. La clase `Usuario` tiene los siguientes métodos: * `registrar()`: crea un nuevo usuario y establece la sesión como activa. * `iniciar_sesion(contraseña_ingresada)`: verifica la contraseña ingresada y establece la sesión como activa si es correcta. * `cerrar_sesion()`: cierra la sesión del usuario. * `__str__()`: devuelve una representación en cadena del usuario. En el ejemplo de uso, creamos un nuevo usuario y lo registramos. Luego, ingresamos la contraseña para iniciar sesión y verificamos que la sesión esté activa. Finalmente, cerramos la sesión y verificamos que el flag `sesion_activa` esté falso.

Want to kickstart your project?Use the new AI Studio to create your code