JSON
JSON ist Text. Ein Dictionary hält Namen und Werte im Programm, ist aber noch kein JSON. dumps macht aus dem Dictionary eine einzige Zeile Text. Auf dieser Seite öffnest du keine Datei und baust keinen Pfad.
import json
lamp = {"color": "blue", "watts": 7}
text = json.dumps(lamp)
print(text)
Auf dem Bildschirm steht genau {"color": "blue", "watts": 7}. color und blue stehen in doppelten Anführungszeichen. watts ist eine Zahl, deshalb hat 7 keine Anführungszeichen. Das Leerzeichen nach jedem Doppelpunkt und das Leerzeichen nach dem Komma gehören zu diesem Text. text ist eine Zeichenkette. Es entsteht keine Datei, und open und Path fehlen in diesem Programm.
import json
text = '{"color": "blue", "watts": 7}'
lamp = json.loads(text)
print(lamp["color"])
print(lamp["watts"])
Der Bildschirm zeigt blue und danach 7. loads liest den JSON-Text und baut das Dictionary wieder auf. lamp["color"] ist das Wort blue; die Anführungszeichen sind im Text geblieben und gehören nicht zum Wert. lamp["watts"] ist dagegen die Zahl 7 und nicht das Wort 7. Dieses Programm liest keine Datei, denn der Text stand schon in der Variablen.
📊 dumps und loads
| Aufruf | Du startest mit | Du erhältst |
|---|---|---|
| json.dumps | einem Dictionary | eine Zeile JSON-Text, und es wird keine Datei geschrieben |
| json.loads | JSON-Text | ein Dictionary, und es wird keine Datei gelesen |
Ist der Text kein echtes JSON, bricht loads ab. Dieser Abbruch heißt JSONDecodeError. {color: blue} ist kein JSON, weil die Namen und das Wort blue keine doppelten Anführungszeichen haben. Diese Zeile steht nicht in den Programmen. None wird nicht an ihrer Stelle geschrieben, und das Programm läuft nicht weiter.
Auf der nächsten Seite geht es um die CSV-Tabelle. Diese Seite wandelt nur ein Dictionary in Text um und diesen Text wieder in ein Dictionary.
Erst Text, dann wieder das Dictionary
dumps zeigt {"color": "blue", "watts": 7}. loads zeigt danach blue und 7. Die 7 ist eine Zahl. Eine kaputte Zeile bricht mit JSONDecodeError ab. Es wird keine Datei geschrieben und keine gelesen. Die nächste Seite behandelt die CSV-Tabelle.
🧠 Testen Sie Ihr Wissen
Testen Sie Ihr Wissen
Fordern Sie sich mit diesem interaktiven Quiz heraus und sehen Sie, wie gut Sie das Thema verstehen
📝 Anweisungen
- Lesen Sie jede Frage sorgfältig
- Wählen Sie die beste Antwort für jede Frage
- Sie können das Quiz so oft wiederholen, wie Sie möchten
- Ihr Fortschritt wird oben angezeigt