Anotações de Python

Anotações de Python
Estudaremos sobre as anotações Python neste tutorial. Em Python 3.0, as anotações foram introduzidas pela primeira vez sem nenhum objetivo claro. Eles serviram como nada mais do que um meio de associar as expressões arbitrárias a argumentos de função e valores de retorno. Anos depois, o PEP 484 descreveu o processo para incluir as dicas de tipo no código Python. As anotações são o principal método para incluir as dicas de tipo. Dado que a verificação do tipo é mais comumente usada hoje em dia, as anotações devem ser usadas principalmente para as dicas do tipo.

Anotações em Python

Os tipos de dados de variáveis, parâmetros de função e tipos de retorno de função são descritos através das anotações que são as frases arbitrárias de Python.

Para fornecer os recursos eficientes e economizadores de tempo, como sugestões de sintaxe, o tipo de dados Dimping em IDEs, verificação do tipo de dados, criação de documentação robótica ou acionada por IA e conclusão automática de código, as anotações se esforçam para tornar o código-fonte mais acessível e compreensível.

A função e as anotações variáveis ​​são os dois tipos de anotações disponíveis no Python. Com o uso de exemplos pertinentes, discutiremos as duas formas de anotações python neste post.

O que são anotações variáveis?

O Python usa expressões chamadas anotações variáveis ​​para descrever os tipos de dados de variáveis ​​em mais profundidade. A sintaxe para anotações variáveis ​​é dada no seguinte:

Exemplo 1:
As expressões para anotações são prefixadas com um cólon “ou:” e colocadas entre o nome da variável e o valor inicial. Para entender melhor o conceito, consulte o seguinte código Python. Usamos os tipos de dados python internos para expressões no exemplo a seguir. A imagem anexada demonstra o código de amostra geral:

Aqui está o resultado produzido pelo código anterior mostrado:

Strings também podem ser usadas para descrever as variáveis ​​no lugar. Isso é exibido no código, como você pode ver no seguinte:

Anexado está a saída:

Para acessar cada anotação, utilize o atributo “__annotações___”. Esta propriedade é um dicionário com variáveis ​​como chaves e expressões de anotação como valores. As funções não são cobertas por este atributo. Ele fornece apenas informações sobre as variáveis. Para isso, consulte o seguinte código Python:

O resultado de utilizar as “_annotações_” no código Python é visto no seguinte:

Conversamos apenas sobre os tipos de dados simples até agora, incluindo int, float e str. Vamos agora ver como criar as expressões de anotação para tipos de dados mais complicados, como listas, tuplas, conjuntos, listas de objetos, etc. Vamos usar o módulo de tipo para isso.

A biblioteca padrão do Python inclui o módulo de tipo. Com a ajuda de um exemplo, vamos aprender a aplicá -lo aos tipos de dados complexos. Para isso, consulte o seguinte código Python:

O seguinte é o resultado:

As formas genéricas de lista, tupla e conjunto são representadas pela lista de classes, tupla e definida no módulo de tipo. Outras classes genéricas existem além desses três, incluindo dict, Frozenset, DefaultDict e OrderDdict.

Você pode empregar essas classes genéricas para dar às variáveis ​​as expressões de anotação. Seguindo as classes são os ponteiros [] entre as outras classes genéricas, descrições de string, tipos de dados primitivos ou classes do mesmo módulo.

A próxima seção deste artigo discutirá como usá -los para formular as expressões de função.

O que são anotações de função?

No PEP-3107, as anotações da função são descritas. O objetivo principal é estabelecer um método uniforme para conectar as informações aos argumentos da função e retornar valores. Muitos membros da comunidade descobriram os casos de uso inovadores, embora empregassem as várias técnicas, incluindo a adição dos recursos exclusivos ao objeto de função e criando os decoradores personalizados e os formatos de Docstring.

É crucial perceber que o Python não concede semântica nas anotações. Ele oferece apenas um ótimo suporte sintático para marcar os metadados e uma maneira simples de acessá -lo. As anotações também são totalmente opcionais.

Exemplo 2:
Vejamos um exemplo. Aqui está uma função chamada func () que imprime a soma das três entradas - um, dois e três. Notavelmente, func () não retorna nada. Um, o primeiro argumento, é deixado sem anotado. O tipo inteiro é anotado para o terceiro parâmetro, "três", enquanto a string "anotando dois" é anotada para a segunda entrada, "dois.”O tipo de flutuação é indicado ao lado do valor de retorno. Tome nota da sintaxe "->" (dada abaixo) ao anotar o valor de retorno. A imagem anexada demonstra o código de amostra geral:

A execução da função não é de forma alguma impactada pelas anotações. Vamos usar os argumentos int e string, respectivamente, ao usar o func () duas vezes. Nas duas vezes, o func () toma a ação apropriada e ignora as anotações.

A imagem anexada demonstra o código de amostra geral:

Aqui está o resultado de aplicar as duas funções:

Exemplo 3:
Para sua ajuda, aqui está outro programa de exemplo. A função create_user () aceita os três valores - nome, idade e hobbies - e produz um dicionário ou ditado, como pode ser visto na imagem a seguir. A função Create Users () leva uma lista de tuplas que definem uma lista de usuários. Esta abordagem produz uma lista de dicionários.

A variável do tipo dicto armazena os resultados da chamada do método para o método create user ().

Além disso, os usuários de variáveis ​​do tipo de lista [dict] mantêm os resultados da chamada de função para o método Create Users (). A imagem anexada demonstra o código de amostra geral:

Todos os nomes, idades e hobbies dos usuários são exibidos aqui:

Somente as informações sobre as variáveis ​​são fornecidas pelo atributo “__annotações__”. Podemos empregar o atributo “__annotações__” para recuperar as informações de anotação sobre as funções. Você pode entender esse conceito com o seguinte código dado. A imagem anexada demonstra o código de amostra geral:

Todas as informações de anotação estão incluídas no dicionário de saída. Lembre -se de que a chave do dicionário para o tipo de retorno é "Retorno". As chaves dos parâmetros são os nomes dos parâmetros.

Conclusão

Python é uma poderosa linguagem de programação com digitação dinâmica. É suportado por uma vasta gama de bibliotecas e funcionalidades e possui uma sintaxe simples semelhante à escrita em inglês simples. Anotações são uma dessas opções. O objetivo das anotações é tornar o código -fonte mais legível e fácil de entender. A função e as anotações variáveis ​​são os dois principais tipos de anotações usadas no Python. Cobrimos as duas formas de anotações Python neste artigo com a ajuda dos exemplos relevantes.