ExpertiDict

Python · Intermediário · Inglês · Técnico

TypedDict

/ˈtaɪpt dɪkt/substantivo

Classe do módulo typing que descreve a forma de um dict com chaves fixas e tipos por chave. Só vale para verificadores de tipo: em execução, continua um dict comum.

Onde usar

Útil para tipar JSON e respostas de API sem criar classes. Em code review, é a alternativa leve à dataclass quando os dados já chegam como dicionário.

Em código

from typing import TypedDict
class Usuario(TypedDict):
  nome: str
  idade: int
u: Usuario = {'nome': 'Ana', 'idade': 30}
print(u['nome'])

Exemplos

Type the API payload with a TypedDict.

Tipe o payload da API com um TypedDict.

TypedDict doesn't validate anything at runtime.

O TypedDict não valida nada em tempo de execução.

Cuidado

Não espere validação em execução: o TypedDict não impede chaves erradas, quem checa é o mypy; para validar de verdade, use Pydantic ou código próprio.

Veja também

Todos os termos de Python