Saltar al contenido

PyConvertidor JSON → Python

Cargando...

El uso del JSON de respuesta de una API en un proyecto de Python requiere escribir modelos dataclass o Pydantic a mano. Esta herramienta analiza tus datos JSON y genera el código Python automáticamente. Admite Pydantic v1/v2 y dataclasses estándar, y convierte automáticamente las claves camelCase a nombres de campo snake_case.

Cómo usar

  1. 1
    Ingresar JSON

    Pega los datos JSON en la entrada de la izquierda. Haz clic en 'Cargar ejemplo' para cargar datos de muestra.

  2. 2
    Configurar opciones

    Elige el modo de salida (Pydantic v2 / Pydantic v1 / dataclass) y un nombre para la clase raíz. Activa los tipos opcionales y la generación de alias de campos según sea necesario.

  3. 3
    Copiar el código

    Revisa el código Python generado a la derecha y haz clic en el botón de copiar.

Consejos

  • 💡Las claves camelCase (ej. userId) se convierten automáticamente a snake_case (user_id). Activa 'Alias de campo' para preservar el nombre de la clave original como un alias.
  • 💡Pydantic v2 genera código para la última versión de Pydantic 2.x. Elige Pydantic v1 para proyectos antiguos.
  • 💡La inferencia de tipos se basa en el primer objeto de cada arreglo, así que usa una muestra de JSON representativa.
  • 💡Activa 'Opcional' para anotar campos con valores nulos como Optional[T].

Preguntas frecuentes

Q. ¿Cómo se usan las clases Python generadas?
A. Se generan como @dataclass o modelos Pydantic BaseModel. Pydantic con FastAPI gestiona automáticamente la validación de solicitudes/respuestas de API.
Q. ¿Cuál es la diferencia entre dataclass y Pydantic?
A. dataclass es de la biblioteca estándar, para estructuras simples. Pydantic añade validación en tiempo de ejecución, serialización y un ecosistema robusto para desarrollo de APIs.
Q. ¿Cómo se manejan las claves camelCase de JSON en Python?
A. Python usa snake_case por convención, mientras que las APIs JSON suelen usar camelCase. Con Pydantic, puedes configurar alias_generator=to_camel para mapear automáticamente entre ambos.

DevHelper

© 2026. Todos los derechos reservados.