Cómo mejorar el manejo de datos con clases de datos de Pydantic

Como Mejorar El Manejo De Datos Con Clases De Datos De Pydantic



Las clases de datos de Pydantic ofrecen una solución avanzada para refinar el manejo de datos en Python. Trabajar como un marco de validación de datos simplifica el proceso de creación de datos estructurados integrándolos con clases de datos. Automatiza la validación de datos, informes de errores y conversiones de tipos de datos. Esto garantiza que los datos se alineen con los requisitos especificados. También admite valores predeterminados, campos opcionales y estructuras de datos complejas. En resumen, las clases de datos de Pydantic ayudan a los programadores a optimizar las prácticas de manejo de datos, lo que genera resultados de codificación efectivos y confiables.

Sintaxis:

Una forma simple pero efectiva de mejorar la forma en que se administran los datos usando las clases de datos de Pydantic en Python es utilizando el decorador de clases con la ayuda del cual esencialmente creamos un modelo de cómo deberían verse nuestros datos. Es como darle a nuestros datos una estructura clara. Entonces, la sintaxis para definir la clase de datos es la siguiente:







clase nombre del modelo ( Modelo base )

El 'model_name' presenta el nombre del modelo que queremos crear y el 'BaseModel' de Pydantic actúa como un guardián que garantiza que los datos sigan las reglas que establecemos y se pasen al modelo como parámetro de entrada. Dentro de la clase, definimos qué tipo de información debe contener cada dato. Este proceso garantiza que cuando creamos una instancia de la clase de datos, la información que proporcionamos coincida con lo que definimos.



Método 1: Manejo de datos mejorado con la clase de datos de Pydantic

Imaginemos que estamos desarrollando una aplicación sencilla para organizar la información sobre libros de nuestra colección. Queremos asegurarnos de que los datos que recopilamos para este fin sean precisos, coherentes y estén bien estructurados. Aquí es donde intervienen las clases de datos de Pydantic para simplificar y mejorar el proceso.



Comenzar con el ejemplo requiere definir una clase de datos Pydantic. Entonces, comenzamos definiendo una clase de datos de Pydantic llamada 'Libros' que representa los detalles de los libros. Para definir la clase de datos para Pydantic, debemos asegurarnos de que todos los paquetes de Pydantic estén instalados antes en el proyecto.





de pidántico importar Modelo base

Usando el decorador de clases, creamos la clase 'Libro' que hereda del BaseModel de Pydantic. Dentro de la clase, especificamos atributos como título, autor y año_de lanzamiento, cada uno asociado con su respectivo tipo de datos.

clase Libro ( Modelo base ) :

título: cadena

autor: cadena

año de lanzamiento: En t

Después de crear un modelo de clase, utilizamos la clase de datos de Pydantic, tomando el poder de la clase de datos 'Libro' para manejar los datos de la 'película':



En esta sección imitamos a un usuario que ingresa los detalles del libro. El modelo de la clase de datos 'libro' tiene atributos como título, autor y año de publicación con sus tipos de datos distintivos. Entonces, en esta parte, es decir, 'entrada', especificamos sus valores.

aporte = {

  'título' : 'Sufrir' ,

  'autor' : 'Adán' ,

  'año de lanzamiento' : 2023

}

Después de las especificaciones de los detalles sobre los atributos del modelo de libro en la entrada, creamos una instancia de 'Libro' con los datos proporcionados utilizando estos detalles; Esto se hace para garantizar que Pydantic valide automáticamente la entrada con la estructura de datos definida. Si hay alguna inconsistencia o error, como un año de lanzamiento no entero o un título faltante, Pydantic genera rápidamente un error junto con una explicación fácil de usar.

intentar :

libro = Libro ( ** aporte )

  imprimir ( 'Detalles del libro:' , libro. título , libro. autor , libro. año de lanzamiento )

excepto Excepción como Es:

  imprimir ( 'Error:' , Es )

Para el manejo de datos mejorado experimentado con las clases de datos de Pydantic, recibimos un mecanismo integrado para la validación y coherencia de los datos. Podemos incorporar campos opcionales, valores predeterminados y estructuras anidadas complejas para cubrir los distintos escenarios de datos. Esto garantiza que nuestros datos permanezcan organizados y formateados correctamente.

Este paso explora cómo las clases de datos de Pydantic ofrecen capacidades mejoradas de manejo de datos a través de características como campos opcionales, valores predeterminados y estructuras anidadas.

Aquí hay un ejemplo donde mostramos cómo agregar los campos opcionales y los valores predeterminados:

Supongamos que queremos permitir que los usuarios ingresen detalles adicionales sobre los libros, como el género y el tiempo de ejecución. Sin embargo, es posible que estos detalles no siempre estén disponibles. Con las clases de datos de Pydantic, podemos lograr esto fácilmente haciendo que los campos sean opcionales e incluso estableciendo los valores predeterminados.

En este ejemplo, la clase de datos 'Película' incluye dos campos nuevos: el idioma en el que está escrito el libro y el número de páginas. El campo 'idioma' tiene un valor predeterminado de 'Desconocido', lo que indica que si el usuario no proporciona este detalle, el valor predeterminado es 'Desconocido'. El campo 'número de páginas' es opcional y se puede dejar en blanco (establecer en ninguno).

de pidántico importar Modelo base
clase Libro ( Modelo base ) :
título: cadena
autor: cadena
año de lanzamiento: En t
idioma: cadena = 'desconocido'
páginas: En t = Ninguno
aporte = {
    'título' : 'Sufrir' ,
    'autor' : 'Adán' ,
    'año de lanzamiento' : 2023 ,
    'idioma' : 'Inglés' ,
    'páginas' : 234
}
libro = Libro ( ** aporte )
imprimir ( 'Detalles del libro:' , libro. título , libro. autor , libro. año de lanzamiento , libro. idioma , libro. paginas )

Podemos copiar estas líneas de código y pegarlas en el compilador para observar los resultados:

de pidántico importar Modelo base
clase Libro ( Modelo base ) :
título: cadena
autor: cadena
año de lanzamiento: En t
aporte = {
    'título' : 'Sufrir' ,
    'autor' : 'Adán' ,
    'año de lanzamiento' : 2023
}

# Creando una instancia de libro
intentar :
libro = Libro ( ** aporte )
    imprimir ( 'Detalles del libro:' , libro. título , libro. autor , libro. año de lanzamiento )
excepto Excepción como Es:
    imprimir ( 'Error:' , Es )

Al incluir estos campos opcionales y valores predeterminados, Pydantic garantiza que los datos permanezcan bien estructurados y coherentes incluso si los usuarios no proporcionan ciertos detalles.

Método 2: Manejo de datos con la clase de datos de Pydantic para el formulario de inscripción de estudiantes

Imaginemos que estamos realizando un formulario de inscripción para un evento escolar. Las personas necesitan ingresar su información y queremos evitar errores. Ahí es donde ayudan las clases de datos de Pydantic. Se aseguran de que los datos sean correctos y los manejan fácilmente.

Después de incorporar los paquetes necesarios al proyecto Python, definimos una clase de datos de Pydantic creando una clase de datos de Pydantic llamada 'Estudiante' para los detalles de los participantes.

de pidántico importar Modelo base

Utilice el decorador de clases para configurar la clase 'Estudiante'. Hereda del BaseModel de Pydantic. Dentro nombramos los atributos como nombre, correo electrónico, departamento y teléfono, cada uno con su tipo de datos.

clase Alumno ( Modelo base ) :

nombre: cadena

  correo electrónico : cadena

departamento: cadena

teléfono: cadena

Con el uso de la clase de datos de Pydantic ahora, trabaje con la clase de datos 'Estudiante' para administrar los datos de los estudiantes:

información = {

  'nombre' : 'XYZ' ,

  'correo electrónico' : 'xyz@student.com' ,

  'departamento' : 'Andrés' ,
 
  'teléfono' : '0003-4567234'

}

En esta parte pretendemos que alguien se registre. Cuando creamos una instancia de 'Estudiante' usando sus datos, Pydantic verifica si se ajusta a la estructura. Si hay un error, como un correo electrónico sin '@' o un departamento sin cadena, Pydantic se detiene y explica el problema.

alumno = Alumno ( **información )

imprimir ( 'Detalles del estudiante:' , alumno )

El manejo de datos mejorado utilizando las clases de datos de Pydantic nos brinda datos listos para usar. Podemos agregar más campos, establecer los valores predeterminados o trabajar con configuraciones de datos complejas. Todo ello garantiza que nuestros datos se mantengan organizados.

El código y el fragmento del resultado se mencionan a continuación para la observación:

de pidántico importar Modelo base

clase Alumno ( Modelo base ) :
nombre: cadena
    correo electrónico : cadena
departamento: cadena
teléfono: cadena

información = {
    'nombre' : 'XYZ' ,
    'correo electrónico' : 'xyz@student.com' ,
    'departamento' : 'Andrés' ,
    'teléfono' : '0003-4567234'
}
alumno = Alumno ( **información )
imprimir ( 'Detalles del estudiante:' , alumno )

Después de observar el resultado, podemos resumir que las clases de datos de Pydantic facilitan el manejo de los datos en este sencillo ejemplo. Se aseguran de que la entrada coincida con lo que queremos. Esto significa menos errores y usuarios más felices.

Conclusión

Las clases de datos de Pydantic integran la forma en que manejamos los datos. Garantizan que la información sea precisa y se ajuste a la estructura requerida. Esto se traduce en menos errores y aplicaciones más impecables. Con Pydantic, los desarrolladores pueden dedicar sus esfuerzos a crear aplicaciones que funcionen bien sin preocuparse por problemas de datos. Piense en ello como si tuviera un administrador de tareas dedicado solo para administrar los datos, garantizando que todo funcione sin problemas de principio a fin.