JSON a dataclass de Python
Pega un JSON de ejemplo y obtén clases de Python: @dataclass o Pydantic BaseModel, tipos de typing (Optional, list) y campos snake_case, con su nombre original.
Cómo generar clases de Python desde JSON
- Pega un JSON de ejemplo a la izquierda o abre un archivo .json; el código aparece a la derecha.
- Elige @dataclass o Pydantic y cambia el nombre del tipo raíz si quieres.
- Cópialo o descarga el archivo .py.
Preguntas frecuentes
@dataclass viene con Python y sirve para guardar datos sencillos. Pydantic (se instala aparte) comprueba y convierte los valores al leer el JSON, y se usa mucho con FastAPI.
Python usa snake_case, así que firstName pasa a first_name, y palabras reservadas como class pasan a class_. Con @dataclass el nombre original se anota al final de la línea; con Pydantic un alias sigue leyendo el JSON original.
En un @dataclass, los campos con valor por defecto (= None, para los que no siempre están) deben ir después de los que no lo tienen, así que se bajan.
Python 3.9 o posterior (el código usa list[str]). El código Pydantic es para Pydantic v2.
Es totalmente gratis y no requiere registro.
Herramientas relacionadas
JSON a TypeScriptGenera interfaces TypeScript a partir de un JSON de ejemploJSON a struct de GoGenera structs de Go desde un JSON de ejemploJSON a clase JavaGenera clases o records de Java desde JSONJSON a data class de KotlinGenera data classes de Kotlin desde JSONEscapar / desescapar JSONConvierte texto en una cadena JSON válida y al revésFormateador JSONFormatea, minifica y valida JSONReparar JSONArregla automáticamente un JSON rotoComparar JSONEncuentra las diferencias entre dos JSONVisor JSONVe un JSON en árbol y pliega o despliega sus ramas