Como aprimorar o tratamento de dados com classes de dados Pydantic

Como Aprimorar O Tratamento De Dados Com Classes De Dados Pydantic



As dataclasses Pydantic oferecem uma solução avançada para refinar o tratamento de dados em Python. Trabalhar como uma estrutura de validação de dados simplifica o processo de criação de dados estruturados, integrando-os com classes de dados. Ele automatiza a validação de dados, relatórios de erros e conversões de tipos de dados. Isso garante que os dados estejam alinhados com os requisitos especificados. Ele também oferece suporte a valores padrão, campos opcionais e estruturas de dados complexas. Resumindo, as classes de dados Pydantic ajudam os programadores a otimizar as práticas de manipulação de dados, levando a resultados de codificação eficazes e confiáveis.

Sintaxe:

Uma maneira simples, mas eficaz de melhorar a forma como os dados são gerenciados usando as classes de dados Pydantic em Python é utilizar o decorador de classe com a ajuda do qual criamos essencialmente um modelo de como nossos dados devem ser. É como dar aos nossos dados uma estrutura clara. Portanto, a sintaxe para definir a classe de dados é a seguinte:







aula nome_modelo ( Modelo Base )

O “model_name” apresenta o nome do modelo que queremos criar e o “BaseModel” do Pydantic atua como um guardião que garante que os dados seguem as regras que definimos e são passados ​​​​ao modelo como parâmetro de entrada. Dentro da classe, definimos que tipo de informação cada dado deve conter. Este processo garante que quando criamos uma instância da classe de dados, as informações que fornecemos correspondem ao que definimos.



Método 1: Tratamento de dados aprimorado com classe de dados do Pydantic

Imagine que estamos desenvolvendo um aplicativo simples para organizar as informações dos livros do nosso acervo. Queremos garantir que os dados que coletamos para essa finalidade sejam precisos, consistentes e bem estruturados. É aqui que as classes de dados Pydantic entram em cena para simplificar e melhorar o processo.



Começar com o exemplo requer a definição de uma classe de dados Pydantic. Então, começamos definindo uma classe de dados Pydantic chamada “Livros” que representa os detalhes dos Livros. Para definir a classe de dados do Pydantic, precisamos ter certeza de que todos os pacotes do Pydantic estão instalados antes do projeto.





de pydantico importar Modelo Base

Usando o decorador de classe, criamos a classe “Book” herdada do BaseModel do Pydantic. Dentro da classe, especificamos os atributos como título, autor e ano_de lançamento, cada um associado ao seu respectivo tipo de dados.

aula Livro ( Modelo Base ) :

título: str

autor: str

ano de lançamento: interno

Depois de criar um modelo de classe, utilizamos a classe de dados Pydantic, aproveitando o poder da classe de dados “Livro” para lidar com os dados do “filme”:



Nesta seção, imitamos um usuário que insere os detalhes do livro. O modelo da classe de dados “livro” possui atributos como título, autor e ano de lançamento com seus tipos de dados distintos. Então, nesta parte, ou seja, “entrada”, especificamos seus valores.

entrada = {

'título' : 'Sofrer' ,

'autor' : 'Adão' ,

'ano de lançamento' : 2023

}

Após a especificação dos detalhes sobre os atributos do modelo de livro na entrada, criamos uma instância “Livro” com os dados fornecidos utilizando esses detalhes; isso é feito para garantir que o Pydantic valide automaticamente a entrada em relação à estrutura de dados definida. Se houver alguma inconsistência ou erro, como um ano de lançamento não inteiro ou um título ausente, o Pydantic rapidamente gera um erro junto com uma explicação amigável.

tentar :

livro = Livro ( ** entrada )

imprimir ( 'Detalhes do livro:' , livro. título , livro. autor , livro. ano de lançamento )

exceto Exceção como e:

imprimir ( 'Erro:' , e )

Para o tratamento de dados aprimorado e experiente com classes de dados Pydantic, recebemos um mecanismo integrado para validação e consistência de dados. Podemos incorporar campos opcionais, valores padrão e estruturas aninhadas complexas para cobrir os vários cenários de dados. Isso garante que nossos dados permaneçam organizados e formatados corretamente.

Esta etapa explora como as classes de dados Pydantic oferecem recursos aprimorados de manipulação de dados por meio de recursos como campos opcionais, valores padrão e estruturas aninhadas.

Aqui está um exemplo onde mostramos como adicionar os campos opcionais e valores padrão:

Suponha que queiramos permitir que os usuários insiram detalhes adicionais sobre os livros, como gênero e tempo de execução. No entanto, esses detalhes podem nem sempre estar disponíveis. Com as classes de dados Pydantic, podemos conseguir isso facilmente tornando os campos opcionais e até mesmo definindo os valores padrão.

Neste exemplo, a classe de dados “Movie” inclui dois novos campos: o idioma em que o livro foi escrito e o número de páginas. O campo “idioma” tem o valor padrão “Desconhecido”, o que indica que se o usuário não fornecer esse detalhe, o valor padrão será “Desconhecido”. O campo “número de páginas” é opcional e pode ser deixado em branco (definido como nenhum).

de pydantico importar Modelo Base
aula Livro ( Modelo Base ) :
título: str
autor: str
ano de lançamento: interno
linguagem: str = 'desconhecido'
Páginas: interno = Nenhum
entrada = {
'título' : 'Sofrer' ,
'autor' : 'Adão' ,
'ano de lançamento' : 2023 ,
'linguagem' : 'Inglês' ,
'Páginas' : 2. 3. 4
}
livro = Livro ( ** entrada )
imprimir ( 'Detalhes do livro:' , livro. título , livro. autor , livro. ano de lançamento , livro. linguagem , livro. Páginas )

Podemos copiar estas linhas de código e colá-las no compilador para observar os resultados:

de pydantico importar Modelo Base
aula Livro ( Modelo Base ) :
título: str
autor: str
ano de lançamento: interno
entrada = {
'título' : 'Sofrer' ,
'autor' : 'Adão' ,
'ano de lançamento' : 2023
}

# Criando uma instância de livro
tentar :
livro = Livro ( ** entrada )
imprimir ( 'Detalhes do livro:' , livro. título , livro. autor , livro. ano de lançamento )
exceto Exceção como e:
imprimir ( 'Erro:' , e )

Ao incluir esses campos opcionais e valores padrão, o Pydantic garante que os dados permaneçam bem estruturados e consistentes, mesmo que os usuários não forneçam determinados detalhes.

Método 2: Tratamento de dados com Dataclass do Pydantic para o formulário de inscrição do aluno

Imagine que estamos fazendo uma ficha de inscrição para um evento escolar. As pessoas precisam inserir suas informações e queremos evitar erros. É aí que as classes de dados Pydantic ajudam. Eles garantem que os dados estão corretos e os manipulam facilmente.

Depois de trazer os pacotes necessários para o projeto Python, definimos uma classe de dados Pydantic criando uma classe de dados Pydantic chamada “Student” para detalhes dos participantes.

de pydantico importar Modelo Base

Use o decorador de turma para configurar a turma “Aluno”. Ele herda do BaseModel do Pydantic. Dentro, nomeamos os atributos como nome, email, departamento e telefone, cada um com seu tipo de dados.

aula Estudante ( Modelo Base ) :

nome: str

e-mail : str

departamento: str

telefone: str

Com o uso da classe de dados Pydantic agora, trabalhe com a classe de dados “Aluno” para gerenciar os dados dos alunos:

informações = {

'nome' : 'XYZ' ,

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

'departamento' : 'André' ,

'telefone' : '0003-4567234'

}

Nesta parte, fingimos que alguém se inscreve. Quando criamos uma instância “Student” usando seus dados, o Pydantic verifica se ela se ajusta à estrutura. Se houver um erro, como um e-mail sem “@” ou um departamento sem string, o Pydantic para e explica o problema.

estudante = Estudante ( **informações )

imprimir ( 'Detalhes do aluno:' , estudante )

O tratamento aprimorado de dados usando classes de dados Pydantic nos fornece dados prontos para uso. Podemos adicionar mais campos, definir padrões ou trabalhar com configurações de dados complexas. Tudo isso garante que nossos dados permaneçam organizados.

O código e o trecho da saída são mencionados a seguir para a observação:

de pydantico importar Modelo Base

aula Estudante ( Modelo Base ) :
nome: str
e-mail : str
departamento: str
telefone: str

informações = {
'nome' : 'XYZ' ,
'e-mail' : 'xyz@aluno.com' ,
'departamento' : 'André' ,
'telefone' : '0003-4567234'
}
estudante = Estudante ( **informações )
imprimir ( 'Detalhes do aluno:' , estudante )

Depois de observar a saída, podemos resumir que as classes de dados Pydantic facilitam o manuseio dos dados neste exemplo simples. Eles garantem que a entrada corresponda ao que desejamos. Isso significa menos erros e usuários mais satisfeitos.

Conclusão

Dataclasses Pydantic integram a forma como lidamos com os dados. Eles garantem que as informações sejam precisas e se ajustem à estrutura exigida. Isso se traduz em menos erros e aplicativos mais perfeitos. Com o Pydantic, os desenvolvedores podem dedicar seus esforços à criação de aplicativos que funcionem bem, sem serem perturbados por preocupações com problemas de dados. Pense nisso como ter um gerenciador de tarefas dedicado apenas para gerenciar os dados, garantindo que tudo corra bem do início ao fim.