Pular para o conteúdo

PyJSON → Python

Carregando...

O uso de JSON de resposta de API em um projeto Python requer a escrita manual de modelos dataclass ou Pydantic. Esta ferramenta analisa seus dados JSON e gera o código Python automaticamente. Suporta Pydantic v1/v2 e dataclasses padrão, e converte automaticamente chaves camelCase em nomes de campo snake_case.

Como usar

  1. 1
    Inserir JSON

    Cole os dados JSON na entrada à esquerda. Clique em 'Carregar Exemplo' para carregar dados de amostra.

  2. 2
    Configurar opções

    Escolha o modo de saída (Pydantic v2 / Pydantic v1 / dataclass) e um nome para a classe raiz. Alterne tipos Opcionais e geração de alias de campo conforme necessário.

  3. 3
    Copiar o código

    Revise o código Python gerado à direita e clique no botão de copiar para copiá-lo para a área de transferência.

Dicas

  • 💡Chaves camelCase (ex: userId) são convertidas automaticamente para snake_case (user_id). Habilite 'Alias de campo' para preservar o nome da chave original como um alias.
  • 💡O Pydantic v2 gera código para o Pydantic 2.x mais recente. Escolha Pydantic v1 para projetos mais antigos.
  • 💡A inferência de tipo é baseada no primeiro objeto de cada array, então use uma amostra JSON representativa.
  • 💡Habilite 'Opcional' para anotar campos com valor nulo como Optional[T].

Perguntas frequentes

Q. Como as classes Python geradas são usadas?
A. São geradas como @dataclass ou modelos Pydantic BaseModel. Pydantic com FastAPI cuida automaticamente da validação de requisições/respostas de API.
Q. Qual é a diferença entre dataclass e Pydantic?
A. dataclass é da biblioteca padrão, para estruturas simples. Pydantic adiciona validação em tempo de execução, serialização e um ecossistema robusto para desenvolvimento de APIs.
Q. Como as chaves camelCase do JSON são mapeadas para Python snake_case?
A. Python usa snake_case por convenção, enquanto APIs JSON usam camelCase. Com Pydantic, configure alias_generator=to_camel no model_config para mapeamento automático.

DevHelper

© 2026. Todos os direitos reservados.