Aporta registros con diferencias
Admite un objeto o un array no vacío de objetos. Los objetos de cada posición de array anidado contribuyen al mismo modelo de elemento; las diferencias entre muestras revelan claves ausentes.
Generación de tipos
Compara los dos registros: una clave ausente y un null explícito producen valores predeterminados distintos.
El análisis y la generación se realizan en este navegador. La entrada no se sube ni se almacena.
Las muestras del array definen el modelo de elemento Root. load_models de Pydantic acepta un objeto o un array.
2 clases · 2 campos que admiten null
JSON a Python convierte respuestas representativas de una API en un borrador de modelo. Incluye registros con claves diferentes: un único objeto completo no revela qué campos pueden faltar.
Este generador dataclass proporciona anotaciones de tipo para contenedores de la biblioteca estándar. Elige Pydantic BaseModel si necesitas interpretar los datos al cargarlos; las muestras no definen por sí solas las reglas de negocio.
JSON a Python mantiene obligatorio un campo presente en todos los registros aunque admita null. Si una muestra omite la clave, añade None como valor predeterminado. Esto cambia qué argumentos necesita el constructor.
Las palabras reservadas, los signos y los métodos del modelo necesitan nombres de atributo seguros. Los metadatos dataclass o los alias Pydantic conservan la escritura original; los sufijos resuelven las colisiones de forma determinista.
Admite un objeto o un array no vacío de objetos. Los objetos de cada posición de array anidado contribuyen al mismo modelo de elemento; las diferencias entre muestras revelan claves ausentes.
El modo de claves ausentes añade None solo donde falta una clave. El modo totalmente opcional permite omitir cualquier campo. Las fechas siguen siendo str salvo que actives ISO. Decimal afecta a grupos numéricos que contienen decimales o exponentes.
La generación espera 350 ms después de editar. Desactiva el modo automático para usar Generar o Ctrl/Cmd+Enter. Los cambios bloquean la exportación inmediatamente. Vaciar y Ejemplo guardan una instantánea de entrada, opciones y código para deshacer.
La salida dataclass de JSON a Python usa solo la biblioteca estándar y coloca los campos obligatorios antes de los que tienen valor predeterminado. La opción Pydantic apunta a 2.12.5. Las clases hijas se declaran antes que sus padres para permitir importar el archivo en Python 3.9.
Los grupos de enteros puros usan int de precisión arbitraria. Si contienen decimales o exponentes, usan float por defecto, incluidos los enteros grandes del grupo, que pueden redondearse. Decimal conserva esos grupos y el cargador analiza decimales sin pasar por float, incluso dentro de contenedores Any.
ISO reconoce fechas válidas y marcas de tiempo completas con zona horaria y hasta seis cifras de fracción de segundo. Todas las cadenas no nulas de una posición deben coincidir en el tipo de fecha. Fechas inválidas, horas sin zona o mayor precisión permanecen str. Pydantic convierte las cadenas reconocidas; dataclass no.
Los campos pasan a ASCII snake_case. Se renombran palabras reservadas, guiones bajos iniciales, nombres model_* y métodos BaseModel. Claves vacías, Unicode y controles conservan alias. Los módulos importados usan alias privados para evitar conflictos con clases llamadas Decimal o BaseModel.
Sí. JSON a Python permite elegir Pydantic 2.12.5 y genera subclases BaseModel con alias y validación de campos desconocidos. Usa load_models para construir las instancias anidadas y aplicar la política numérica seleccionada.
null indica que el campo admite un valor nulo, pero no revela otro tipo. Un campo observado solo como null usa Any; si aparecen valores compatibles no nulos, se obtiene Optional[T]. Eso no hace que pueda omitirse sin valor predeterminado.
Un objeto anidado no vacío produce una clase auxiliar dentro del mismo archivo. Las clases hijas aparecen primero. Un objeto anidado vacío usa Dict[str, Any], porque la muestra no aporta campos que modelar.
Se combinan todos los elementos de la posición correspondiente. Los objetos aportan sus campos al modelo común; tipos incompatibles producen Any y arrays vacíos List[Any]. El array raíz debe ser no vacío y contener solo objetos.
El generador detiene la operación e informa del error, con ubicación cuando está disponible. No repara comentarios, comas finales ni claves duplicadas. El código anterior no puede exportarse como resultado vigente después de cambiar la entrada.
¿Has encontrado una inferencia mejorable?
Prueba JSON a Python con claves ausentes, null y números representativos; después comprueba el código exportado con las reglas de carga de tu aplicación.