Created
February 9, 2024 02:55
-
-
Save CarlosRomero55/205a529e03ce40377c9101eac7d1f311 to your computer and use it in GitHub Desktop.
Puntualmente 4 nuevas funcionalidades. Aquí van
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
usuarios = [] | |
identificadores = [] | |
contador = 1 | |
def validar_longitud(cadena, min_longitud, max_longitud): | |
return min_longitud <= len(cadena) <= max_longitud | |
def validar_telefono(telefono): | |
return len(telefono) == 10 and telefono.isdigit() | |
def validar_correo(correo): | |
return '@' in correo and '.' in correo | |
def agregar_usuario(): | |
global contador | |
global usuarios | |
global identificadores | |
nombre = input("Ingrese su nombre: ") | |
apellidos = input("Ingrese sus apellidos: ") | |
telefono = input("Ingrese su número de teléfono (10 dígitos): ") | |
correo = input("Ingrese su correo electrónico: ") | |
while not (validar_longitud(nombre, 5, 50) and validar_longitud(apellidos, 5, 50) and validar_telefono(telefono) and validar_longitud(correo, 5, 50) and validar_correo(correo)): | |
print("Ha ingresado datos incorrectos. Por favor, inténtelo nuevamente.") | |
nombre = input("Ingrese su nombre: ") | |
apellidos = input("Ingrese sus apellidos: ") | |
telefono = input("Ingrese su número de teléfono (10 dígitos): ") | |
correo = input("Ingrese su correo electrónico: ") | |
usuario = {"ID": contador, "Nombre": nombre, "Apellidos": apellidos, "Teléfono": telefono, "Correo electrónico": correo} | |
usuarios.append(usuario) | |
identificadores.append(contador) | |
contador += 1 | |
print("Usuario registrado exitosamente.") | |
def listar_usuarios(): | |
if usuarios: | |
for usuario in usuarios: | |
print(usuario) | |
else: | |
print("No hay usuarios registrados aún.") | |
def consultar_usuario(): | |
if usuarios: | |
id_consulta = int(input("Ingrese el ID del usuario que desea consultar: ")) | |
encontrado = False | |
for usuario in usuarios: | |
if usuario["ID"] == id_consulta: | |
print(usuario) | |
encontrado = True | |
break | |
if not encontrado: | |
print("No se encontró ningún usuario con ese ID.") | |
else: | |
print("No hay usuarios registrados aún.") | |
def editar_usuario(): | |
if usuarios: | |
id_edicion = int(input("Ingrese el ID del usuario que desea editar: ")) | |
encontrado = False | |
for usuario in usuarios: | |
if usuario["ID"] == id_edicion: | |
print("Ingrese los nuevos datos del usuario:") | |
nombre = input("Nuevo nombre: ") | |
apellidos = input("Nuevos apellidos: ") | |
telefono = input("Nuevo número de teléfono (10 dígitos): ") | |
correo = input("Nuevo correo electrónico: ") | |
while not (validar_longitud(nombre, 5, 50) and validar_longitud(apellidos, 5, 50) and validar_telefono(telefono) and validar_longitud(correo, 5, 50) and validar_correo(correo)): | |
print("Ha ingresado datos incorrectos. Por favor, inténtelo nuevamente.") | |
nombre = input("Nuevo nombre: ") | |
apellidos = input("Nuevos apellidos: ") | |
telefono = input("Nuevo número de teléfono (10 dígitos): ") | |
correo = input("Nuevo correo electrónico: ") | |
usuario["Nombre"] = nombre | |
usuario["Apellidos"] = apellidos | |
usuario["Teléfono"] = telefono | |
usuario["Correo electrónico"] = correo | |
print("Usuario editado exitosamente.") | |
encontrado = True | |
break | |
if not encontrado: | |
print("No se encontró ningún usuario con ese ID.") | |
else: | |
print("No hay usuarios registrados aún.") | |
def menu(): | |
print("\nMENU:") | |
print("A.- Registrar nuevo usuario") | |
print("B.- Listar usuarios") | |
print("C.- Consultar usuario por ID") | |
print("D.- Editar usuario por ID") | |
print("E.- Salir") | |
def main(): | |
global usuarios | |
while True: | |
menu() | |
opcion = input("Seleccione una opción (A/B/C/D/E): ").upper() | |
if opcion == 'A': | |
agregar_usuario() | |
elif opcion == 'B': | |
listar_usuarios() | |
elif opcion == 'C': | |
consultar_usuario() | |
elif opcion == 'D': | |
editar_usuario() | |
elif opcion == 'E': | |
print("¡Hasta luego!") | |
break | |
else: | |
print("Opción no válida. Por favor, seleccione una opción válida.") | |
if __name__ == "__main__": | |
main() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment