🎯 Anotações de Tipo em Python
Em poucas palavras
As anotações de tipo (ou type hints) em Python são uma funcionalidade introduzida na PEP 484 que permite indicar os tipos esperados para variáveis, parâmetros de função e valores de retorno. Embora o Python seja uma linguagem de tipagem dinâmica, as anotações de tipo não alteram o comportamento em tempo de execução, mas servem como metadados valiosos para ferramentas de análise estática, IDEs e, principalmente, para a legibilidade e manutenção do código.
📝 Notas e Desenvolvimento
🔗 Conexões e Contexto
- Atlas: MdC - Programação
- Notas Relacionadas:
📚 Referências e Fontes
Links Externos
Citações Diretas
📂 Outros Conteúdos Preservados
Anotações de Tipo em Python (Complemento)
:: Referência :: typing — Suporte a dicas de tipo — Documentação do Python 3.11.2
Por que Usar Anotações de Tipo?
O uso de anotações de tipo oferece diversos benefícios:
- Melhora a Legibilidade e Documentação: Deixa claro qual tipo de dado uma função espera e retorna, ou qual tipo uma variável deve conter, funcionando como uma forma de documentação viva.
- Auxílio em IDEs: Ambientes de Desenvolvimento Integrado (IDEs) como VS Code, PyCharm e outros podem usar essas anotações para oferecer autocompletar mais preciso, refatoração mais segura e detecção de erros em tempo de desenvolvimento.
- Análise Estática de Código: Ferramentas como o Mypy podem verificar o código sem executá-lo, identificando potenciais erros de tipo antes mesmo de o programa rodar.
- Refatoração Mais Segura: Ao alterar o código, as anotações de tipo ajudam a garantir que as mudanças não introduzam incompatibilidades de tipo em outras partes do sistema.
- Facilita a Colaboração: Em projetos de equipe, as anotações de tipo padronizam a forma como os dados são esperados e manipulados, reduzindo mal-entendidos.
Exemplos
Anotações de tipo em Python permitem identificar um tipo de dado para uma dada variável a fim de facilitar a compreensão do que está sendo executado. Como exemplo, temos:
def greeting(name: str) -> str:
return 'Hello ' + nameAssim, sabemos que a função greeting recebe uma variável chamada name com dados do tipo string e retorna uma variável do tipo string.
Você também pode usar tipos de dados para estruturas como:
typing.Set(set, MutableSet[T])
typing.Counter(collections.Counter, Dict[T, int])
typing.Deque(_deque, MutableSequence[T]_)from typing import List, Dict, Tuple, Set
numeros: List[int] = [1, 2, 3, 4]
configuracoes: Dict[str, str] = {"tema": "dark", "idioma": "pt-br"}
coordenadas: Tuple[float, float] = (10.5, 20.3)
nomes_unicos: Set[str] = {"Ana", "Bruno", "Carlos"}:: Referência :: typing — Suporte a dicas de tipo — Documentação do Python 3.11.2
:: PEP 484 :: Type Hints
:: PEP 526 :: Syntax for Variable Annotations
:: PEP 585 :: Type Hinting Generics In Standard Collections (para list[int] etc.)