JSON zu Python
JSON in Python-POJO-Klassen für Python-Entwicklung umwandeln
JSON-Eingabe
Python-Ausgabe
Was ist JSON zu Python?
Sie haben eine API aufgerufen, eine JSON-Antwort erhalten, und greifen nun mit response["data"]["user"]["email"] auf alles zu — kein Autocomplete, keine Typüberprüfung, und ein Tippfehler führt direkt zu einem KeyError. json.loads() gibt Ihnen ein Dict, was für schnelle Skripte in Ordnung ist. Für echten Anwendungscode sind typisierte Dataclasses oder Pydantic-Modelle aber deutlich besser. Dieses Tool generiert Python-Klassen direkt aus Ihrem JSON — einfügen, strukturierten Python-Code erhalten und ins Projekt kopieren.
Dieses Tool erzeugt Python-Klassendefinitionen aus Ihrem JSON. Schalten Sie Dataclass, Typing und Nullable im Konfigurationspanel um. Dataclasses (Python 3.7+) liefern __init__, __repr__ und Gleichheit kostenlos. Nutzen Sie die Ausgabe mit json.loads() und manueller Zuordnung, oder passen Sie sie für Pydantic-Validierung an.
Die Konvertierung läuft vollständig in Ihrem Browser. Ihr JSON wird nie an einen Server gesendet. Sie können dies über die Netzwerk-Registerkarte Ihres Browsers prüfen.
So verwenden Sie dieses Tool
JSON einfügen oder hochladen
Kopieren Sie Ihr JSON und fügen Sie es in den linken Editor ein. Sie können auch auf Hochladen klicken, um eine .json- oder .txt-Datei zu laden. Nutzen Sie die Beispiel-Schaltfläche für Beispieldaten. Setzen Sie im Konfigurationspanel den Klassennamen (z.B. User) und Optionen: Dataclass für @dataclass, Typing für List[Type]-Annotationen, Nullable für Optional[T].
Generierte Klassen prüfen
Das rechte Panel zeigt den generierten Python-Code. Verschachtelte Objekte werden zu verschachtelten Klassen. Arrays erhalten List[Type] aus dem typing-Modul. Dataclasses nutzen @dataclass; sonst erhalten Sie reguläre Klassen mit __init__. Bei ungültiger JSON-Syntax nutzen Sie zuerst den JSON Formatierer oder den JSON Validator.
Kopieren oder Herunterladen
Nutzen Sie Kopieren, um das Ergebnis in die Zwischenablage zu legen, oder Herunterladen, um es als .py-Datei zu speichern. Für dynamische Typisierung reicht json.loads(). Für Validierung und Parsing siehe Pydantic.
Beispiele: JSON zu Python
Hier ein Beispiel für die Generierung von Python-Dataclasses aus einem JSON-Objekt.
Beispiel: Teilnehmerdatensatz
JSON-Eingabe:
Generierte Python-Ausgabe:
Wann JSON zu Python hilft
Die meisten Entwickler brauchen dies bei der Integration mit REST-APIs. Sie senden eine Anfrage über Postman, requests oder httpx, und die Antwort kommt als JSON. Einfügen hier liefert typisierte Klassen für strukturierten Zugriff. Für das Extrahieren spezifischer Werte aus großen Antworten funktioniert jq gut in der Kommandozeile.
Konfigurationsdateien, Webhook-Payloads oder Event-Streams sind oft JSON. Diese hier durchzulaufen hilft, die Struktur zu verstehen und Python-Klassen für Type Hints, Validierung oder Datenverarbeitungspipelines zu generieren.
Wenn Sie eine FastAPI- oder Flask-App bauen, die externe APIs konsumiert, verbessern typisierte Modelle die Codequalität und fangen Fehler früh ab. Die generierten Klassen können mit minimalen Änderungen für Pydantic angepasst werden.
Häufig gestellte Fragen
Wie konvertiere ich JSON automatisch in eine Python-Dataclass?
Fügen Sie Ihr JSON in dieses Tool ein, aktivieren Sie die Dataclass-Option, und es generiert eine @dataclass-Klasse für jedes verschachtelte Objekt. Kopieren Sie es in Ihr Projekt — funktioniert mit Python 3.7+.
Was ist der Unterschied zwischen einer Dataclass und einer regulären Klasse für JSON?
Dataclasses (Python 3.7+) generieren automatisch __init__, __repr__ und __eq__. Reguläre Klassen brauchen manuelles __init__. Für die meiste API-Arbeit sind Dataclasses sauberer. Für Validierung empfiehlt sich Pydantic.
Werden meine Daten irgendwohin gesendet?
Nein. Alles läuft in Ihrem Browser. Ihr JSON verlässt niemals Ihr Gerät — sicher für Produktions-API-Antworten oder sensible Daten.
Kann ich dies mit Pydantic verwenden?
Die Ausgabe ist Standard-Python. Für Pydantic ändern Sie die Basisklasse zu BaseModel und entfernen @dataclass. Pydantic hat auch eine model_validate()-Methode, die das Parsing aus einem Dict automatisch übernimmt.
Was ist mit snake_case vs. camelCase?
JSON verwendet typischerweise camelCase; Python-Konvention ist snake_case. Der Generator verwendet JSON-Schlüssel wie sie sind. Für Pydantic verwenden Sie model_config = ConfigDict(populate_by_name=True) und Field(alias="camelCaseKey") für die Zuordnung.
Verwandte Tools
Für Python-JSON-Handhabung siehe das Python json-Modul und Pydantic. Für JSON siehe JSON-Spezifikation, RFC 8259 und MDN. Siehe auch jq und Postman.