JSON para Python – Gere dataclass ou modelo Pydantic
Converta um JSON em dataclass do Python ou em modelo Pydantic, com type hints já preenchidos e classes aninhadas separadas.
Código gerado
from dataclasses import dataclass, field
from typing import Any, List, Optional
@dataclass
class Endereco:
cidade: str
uf: str
@dataclass
class Root:
id: int
nome: str
ativo: bool
saldo: float
tags: List[str]
endereco: "Endereco"
ultimo_acesso: Optional[None] = None
Os tipos são inferidos do exemplo: campos ausentes em parte dos itens de um array viram opcionais, e valores null viram anuláveis. Tudo roda no navegador — o JSON não é enviado a nenhum servidor.
Como usar esta ferramenta
- Cole o JSON de exemplo
- Escolha entre dataclass e Pydantic
- Copie as classes geradas
- Ajuste os campos opcionais no projeto
Sobre esta ferramenta
O que é
Dataclass é o recurso nativo do Python para classes de dados com type hints. Pydantic vai além e valida os dados em tempo de execução, o que o torna padrão em FastAPI.
Quando usar
- Tipar a resposta de uma API consumida pelo seu serviço
- Criar o modelo de request de um endpoint FastAPI
- Converter um payload de integração em objeto Python
- Documentar a estrutura esperada de um arquivo de configuração
- Evitar escrever dezenas de campos manualmente
Perguntas frequentes
- Qual escolher: dataclass ou Pydantic?
- Dataclass quando você só quer estrutura e type hints, sem dependência extra. Pydantic quando precisa validar e converter dados de fora, como corpo de requisição.
- Campos com nome inválido em Python são tratados?
- Chaves com hífen ou que colidem com palavras reservadas viram nomes válidos, e o nome original é preservado por um alias no modelo Pydantic.
- Objetos aninhados viram classes separadas?
- Sim. Cada objeto aninhado vira sua própria classe, referenciada pelo campo correspondente, o que mantém o código legível.