Refactoriza tu CRUD de clientes en Python y pasa de una lista con nombres a diccionarios con estructura clara: name, company, email y position. Con una sola función para capturar campos, mejorarás la entrada de datos y el formateo al listar por UID. Además, verás por qué refactorizar es parte natural del trabajo en software.
¿Cómo transformar la lista de clientes con diccionarios en Python?
Usar diccionarios permite definir explícitamente qué es un cliente. En lugar de una lista de strings, se modela cada cliente con llaves y valores. Así, el código se vuelve más expresivo y fácil de mantener.
¿Qué estructura tiene cada cliente?
name: nombre de la persona.
company: organización asociada.
email: correo de contacto.
position: rol como software engineer o Data Engineer.
Porque definen la estructura del dominio del cliente.
Porque facilitan el acceso por llave a cada campo.
Porque hacen el código más flexible para nuevas necesidades.
¿Cómo adaptar create y la captura de datos con get_client_field?
Antes, create recibía solo el nombre. Ahora, recibe el diccionario completo del cliente. Para capturar datos, se usa una función genérica que pide cada campo y no permite continuar con valores vacíos.
¿Cómo se captura cada campo con una función genérica?
Se refactoriza de get_client_name a get_client_field.
Se recibe el nombre del campo y se solicita por input.
Se valida con un while not field hasta tener valor.
defget_client_field(field_name): field =Nonewhilenot field: field =input(f'What is the client {field_name}? ')return field
¿Cómo se envía el objeto cliente a create?
Se construye el diccionario con los cuatro campos.