Comment améliorer la gestion des données avec les classes de données Pydantic

Comment Ameliorer La Gestion Des Donnees Avec Les Classes De Donnees Pydantic



Les classes de données Pydantic offrent une solution avancée pour affiner la gestion des données en Python. Travailler comme un cadre de validation de données simplifie le processus de création de données structurées en les intégrant aux classes de données. Il automatise la validation des données, le rapport d'erreurs et les conversions de types de données. Cela garantit que les données correspondent aux exigences spécifiées. Il prend également en charge les valeurs par défaut, les champs facultatifs et les structures de données complexes. En bref, les classes de données Pydantic aident les programmeurs à optimiser les pratiques de traitement des données, conduisant à des résultats de codage efficaces et fiables.

Syntaxe:

Un moyen simple mais efficace d'améliorer la façon dont les données sont gérées à l'aide des classes de données Pydantic en Python consiste à utiliser le décorateur de classe à l'aide duquel nous créons essentiellement un modèle pour l'apparence de nos données. C’est comme donner à nos données une structure claire. Ainsi, la syntaxe pour définir la classe de données est la suivante :







classe nom du modèle ( Modèle de base )

Le « model_name » présente le nom du modèle que nous voulons créer et le « BaseModel » de Pydantic agit comme un gardien qui garantit que les données suivent les règles que nous avons définies et sont transmises au modèle comme paramètre d'entrée. Au sein de la classe, nous définissons le type d’informations que chaque élément de données doit contenir. Ce processus garantit que lorsque nous créons une instance de la classe de données, les informations que nous fournissons correspondent à ce que nous avons défini.



Méthode 1 : gestion améliorée des données avec la classe de données de Pydantic

Imaginez que nous développons une application simple pour organiser les informations sur les livres de notre collection. Nous voulons nous assurer que les données que nous collectons à cette fin sont exactes, cohérentes et bien structurées. C'est là que les classes de données Pydantic interviennent pour simplifier et améliorer le processus.



Commencer par l'exemple nécessite de définir une classe de données Pydantic. Nous commençons donc par définir une classe de données Pydantic nommée « Books » qui représente les détails des Books. Pour définir la classe de données pour Pydantic, nous devons nous assurer que tous les packages de Pydantic sont installés avant le projet.





depuis pydantique importer Modèle de base

À l'aide du décorateur de classe, nous créons la classe « Book » héritant du BaseModel de Pydantic. À l'intérieur de la classe, nous spécifions les attributs tels que title, author et release_year, chacun associé à son type de données respectif.

classe Livre ( Modèle de base ) :

titre: str

auteur: str

année de sortie: int

Après avoir créé un modèle de classe, nous utilisons la classe de données Pydantic, en utilisant la puissance de la classe de données « Livre » pour gérer les données « film » :



Dans cette section, nous imitons un utilisateur qui saisit les détails concernant le livre. Le modèle de la classe de données « livre » possède des attributs tels que le titre, l'auteur et l'année de sortie avec leurs types de données distinctifs. Ainsi, dans cette partie, c'est-à-dire « entrée », nous précisons leurs valeurs.

saisir = {

'titre' : 'Souffrir' ,

'auteur' : 'Adam' ,

'année de sortie' : 2023

}

Après avoir spécifié les détails sur les attributs du modèle de livre dans l'entrée, nous créons une instance « Book » avec les données fournies en utilisant ces détails ; ceci est fait pour garantir que Pydantic valide automatiquement l'entrée par rapport à la structure de données définie. S'il y a une incohérence ou une erreur, comme une année de sortie non entière ou un titre manquant, Pydantic génère rapidement une erreur accompagnée d'une explication conviviale.

essayer :

livre = Livre ( ** saisir )

imprimer ( 'Détails du livre :' , livre. titre , livre. auteur , livre. année de sortie )

sauf Exception comme C'est:

imprimer ( 'Erreur:' , C'est )

Pour la gestion améliorée des données expérimentée avec les classes de données Pydantic, nous recevons un mécanisme intégré pour la validation et la cohérence des données. Nous pouvons incorporer les champs facultatifs, les valeurs par défaut et les structures imbriquées complexes pour couvrir les différents scénarios de données. Cela garantit que nos données restent organisées et correctement formatées.

Cette étape explore comment les classes de données Pydantic offrent des capacités améliorées de gestion des données grâce à des fonctionnalités telles que les champs facultatifs, les valeurs par défaut et les structures imbriquées.

Voici un exemple dans lequel nous montrons comment ajouter les champs facultatifs et les valeurs par défaut :

Supposons que nous souhaitions permettre aux utilisateurs de saisir des détails supplémentaires sur les livres, tels que le genre et la durée d'exécution. Cependant, ces détails peuvent ne pas toujours être disponibles. Avec les classes de données Pydantic, nous pouvons facilement y parvenir en rendant les champs facultatifs et même en définissant les valeurs par défaut.

Dans cet exemple, la classe de données « Film » inclut deux nouveaux champs : la langue dans laquelle le livre est écrit et le nombre de pages. Le champ « langue » a une valeur par défaut de « Inconnu », ce qui indique que si l'utilisateur ne fournit pas ce détail, la valeur par défaut est « Inconnu ». Le champ « nombre de pages » est facultatif et peut être laissé vide (défini sur aucun).

depuis pydantique importer Modèle de base
classe Livre ( Modèle de base ) :
titre: str
auteur: str
année de sortie: int
langue: str = 'inconnu'
pages : int = Aucun
saisir = {
'titre' : 'Souffrir' ,
'auteur' : 'Adam' ,
'année de sortie' : 2023 ,
'langue' : 'Anglais' ,
'pages' : 2. 3. 4
}
livre = Livre ( ** saisir )
imprimer ( 'Détails du livre :' , livre. titre , livre. auteur , livre. année de sortie , livre. langue , livre. pages )

Nous pouvons copier ces lignes de code et les coller dans le compilateur pour observer les résultats :

depuis pydantique importer Modèle de base
classe Livre ( Modèle de base ) :
titre: str
auteur: str
année de sortie: int
saisir = {
'titre' : 'Souffrir' ,
'auteur' : 'Adam' ,
'année de sortie' : 2023
}

# Création d'une instance de livre
essayer :
livre = Livre ( ** saisir )
imprimer ( 'Détails du livre :' , livre. titre , livre. auteur , livre. année de sortie )
sauf Exception comme C'est:
imprimer ( 'Erreur:' , C'est )

En incluant ces champs facultatifs et valeurs par défaut, Pydantic garantit que les données restent bien structurées et cohérentes même si les utilisateurs ne fournissent pas certains détails.

Méthode 2 : Gestion des données avec la classe de données de Pydantic pour le formulaire d'inscription des étudiants

Imaginez que nous rédigeons un formulaire d'inscription pour un événement scolaire. Les gens doivent saisir leurs informations et nous voulons éviter les erreurs. C'est là que les classes de données Pydantic sont utiles. Ils s'assurent que les données sont correctes et les gèrent facilement.

Après avoir apporté les packages nécessaires au projet Python, nous définissons une classe de données Pydantic en créant une classe de données Pydantic appelée « Student » pour les détails des participants.

depuis pydantique importer Modèle de base

Utilisez le décorateur de classe pour configurer la classe « Étudiant ». Il hérite du BaseModel de Pydantic. À l’intérieur, nous nommons les attributs tels que le nom, l’e-mail, le service et le téléphone, chacun avec son type de données.

classe Étudiant ( Modèle de base ) :

nom: str

e-mail : str

département: str

téléphone: str

Avec l'utilisation de la classe de données Pydantic maintenant, travaillez avec la classe de données « Étudiant » pour gérer les données des étudiants :

Info = {

'nom' : 'XYZ' ,

'e-mail' : 'xyz@student.com' ,

'département' : 'André' ,

'téléphone' : '0003-4567234'

}

Dans cette partie, nous faisons comme si quelqu'un s'inscrivait. Lorsque nous créons une instance « Étudiant » en utilisant leurs données, Pydantic vérifie si elle correspond à la structure. S'il y a une erreur, comme un e-mail sans « @ » ou un service sans chaîne, Pydantic s'arrête et explique le problème.

étudiant = Étudiant ( **Info )

imprimer ( « Détails de l'étudiant : » , étudiant )

La gestion améliorée des données à l'aide des classes de données Pydantic nous donne des données prêtes à l'emploi. Nous pouvons ajouter plus de champs, définir les valeurs par défaut ou travailler avec des configurations de données complexes. Tout cela garantit que nos données restent organisées.

Le code et l'extrait de sortie sont mentionnés ci-dessous pour l'observation :

depuis pydantique importer Modèle de base

classe Étudiant ( Modèle de base ) :
nom: str
e-mail : str
département: str
téléphone: str

Info = {
'nom' : 'XYZ' ,
'e-mail' : 'xyz@student.com' ,
'département' : 'André' ,
'téléphone' : '0003-4567234'
}
étudiant = Étudiant ( **Info )
imprimer ( « Détails de l'étudiant : » , étudiant )

Après avoir observé le résultat, nous pouvons résumer que les classes de données Pydantic facilitent la gestion des données dans cet exemple simple. Ils s'assurent que l'entrée correspond à ce que nous voulons. Cela signifie moins d’erreurs et des utilisateurs plus satisfaits.

Conclusion

Les classes de données Pydantic intègrent la façon dont nous traitons les données. Ils garantissent que les informations sont à la fois exactes et correspondent à la structure requise. Cela se traduit par moins d’erreurs et des applications plus impeccables. Avec Pydantic, les développeurs peuvent consacrer leurs efforts à la création d'applications qui fonctionnent bien sans être dérangés par des problèmes de données. Considérez-le comme un gestionnaire de tâches dédié uniquement à la gestion des données, garantissant que tout se déroule sans problème du début à la fin.