Entrada JSON

Saída Python

O que é JSON para Python?

Python usa dict e classes personalizadas para dados estruturados. Ao analisar JSON com json.loads(), você obtém dicts. Isso funciona para acesso dinâmico, mas para acesso tipado, suporte de IDE e validação você geralmente quer dataclasses ou classes regulares. A especificação JSON define objetos, arrays, strings, números e booleanos—mas Python precisa de definições de classe explícitas para cada estrutura aninhada.

Esta ferramenta gera definições de classes Python a partir do seu JSON. Ative Dataclass, Typing e Nullable no painel de configuração. Dataclasses (Python 3.7+) fornecem __init__, __repr__ e igualdade gratuitamente. Use a saída com json.loads() e mapeamento manual, ou adapte para validação Pydantic.

A conversão é executada inteiramente no seu navegador. Seu JSON nunca é enviado a um servidor. Você pode confirmar isso abrindo a aba de rede do seu navegador.

Como usar esta ferramenta

1

Colar ou enviar JSON

Copie seu JSON e cole no editor esquerdo. Você também pode clicar em Enviar para carregar um arquivo .json ou .txt. Use o botão Amostra para dados de exemplo. No painel de configuração, defina o nome da classe (ex: User) e opções: Dataclass para @dataclass, Typing para anotações List[Type], Nullable para Optional[T].

2

Revisar as classes geradas

O painel direito mostra o código Python gerado. Objetos aninhados tornam-se classes aninhadas. Arrays obtêm <code>List[Type]</code> do módulo typing. Dataclasses usam <code>&#64;dataclass</code>; caso contrário você obtém classes regulares com <code>__init__</code>. Se seu JSON tiver sintaxe inválida, corrija primeiro usando o Formatador JSON ou o Validador JSON.

3

Copiar ou baixar

Use Copiar para colocar o resultado na área de transferência, ou Baixar para salvar como arquivo .py. Cole no seu projeto. Para tipagem dinâmica, json.loads() é suficiente. Para validação e parsing, considere Pydantic.

Exemplos de JSON para Python

Aqui está um exemplo de geração de dataclasses Python a partir de um objeto JSON.

Exemplo: Registro de assinante

Entrada JSON:

Entrada

Saída Python gerada:

Saída

Quando JSON para Python ajuda

A maioria dos desenvolvedores precisa disso ao integrar com APIs REST. Você envia uma requisição através de Postman, requests ou httpx, e a resposta vem como JSON. Colar aqui fornece classes tipadas para acesso estruturado. Para extrair valores específicos de respostas grandes, jq funciona bem na linha de comando.

Arquivos de configuração, payloads de webhook ou fluxos de eventos costumam ser JSON. Processá-los aqui ajuda a entender a estrutura e gerar classes Python para type hints, validação ou pipelines de processamento de dados.

Se você está construindo um app FastAPI ou Flask que consome APIs externas, ter modelos tipados melhora a qualidade do código e detecta erros cedo. As classes geradas podem ser adaptadas para Pydantic com alterações mínimas.

Perguntas frequentes

Dataclass vs classe regular?

Dataclasses (Python 3.7+) fornecem __init__, __repr__, __eq__ e mais gratuitamente. Classes regulares precisam de __init__ manual. Ambos funcionam com parsing JSON. Dataclasses são preferidas para Python moderno.

E os tipos Optional?

Ative Nullable Types para obter Optional[T] ou T | None para campos que podem estar ausentes ou ser null. A sintaxe de união T | None requer Python 3.10+.

Meus dados são enviados para algum lugar?

Não. A geração é executada inteiramente no seu navegador com JavaScript. Nenhum dado é enviado a um servidor. Você pode confirmar abrindo a aba de rede do seu navegador.

Posso usar isso com Pydantic?

A saída é Python padrão. Você pode adaptá-la para Pydantic alterando a classe base para BaseModel e adicionando validadores. Pydantic também tem sua própria geração de esquema a partir de JSON.

snake_case vs camelCase?

JSON costuma usar camelCase; Python prefere snake_case. O gerador usa as chaves JSON como estão. Use Field(alias="camelCase") em Pydantic ou um decodificador personalizado para mapeamento.

Ferramentas relacionadas

Para manipulação de JSON em Python, consulte o módulo json do Python e Pydantic. Para JSON, consulte especificação JSON, RFC 8259 e MDN. Veja também jq e Postman.