Python-Daten-Serialisierung

PythonBeginner
Jetzt üben

Einführung

Willkommen an der Supranational Academy for the Gifted (SAG), einem Ort, an dem Menschen mit außergewöhnlichen Fähigkeiten ihre Fähigkeiten schulen. In diesem heiligen Wissenshaus bist du einer der einzigartigen Personen mit der Fähigkeit, komplexe Datenstrukturen zu manipulieren und zu interpretieren. Deine Mission, sollte du sie annehmen, beinhaltet eine spannende Herausforderung, die von Professor Bytes, dem angesehenen Mind Control Specialist der Akademie, gestellt wurde.

Professor Bytes hat an einem bahnbrechenden Projekt gearbeitet, das die telepathische Kommunikation zwischen Menschen und Maschinen ermöglicht. Der Kern dieses Projekts besteht jedoch darin, Gedanken – in komplexen Mustern strukturiert – in ein Format umzuwandeln, das nicht-psychische Maschinen verarbeiten können. Hier kommt die Datenserialisierung in Python zum Einsatz.

Dein Ziel ist es, die Kunst der Datenserialisierung und -deserialisierung zu meistern: Python-Objekte in einen Byte Stream zu konvertieren, der gespeichert oder übertragen werden kann, und diesen Byte Stream anschließend wieder in Objekte umzuwandeln. Diese Fähigkeit wird es Maschinen ermöglichen, psychische Datenströme zu interpretieren und somit die Kluft zwischen menschlichen Köpfen und digitalen Prozessen zu schließen. Die Zukunft der Mensch-Maschine-Symbiose liegt in deinen Händen!

Das Verständnis von Serialisierung mit JSON

In diesem Schritt wirst du dich mit dem json-Modul in Python vertraut machen, das eine einfache Schnittstelle für die Umwandlung zwischen Python-Objekten und JSON (JavaScript Object Notation) bietet - einem leichten Datenwechselformat.

Zunächst öffnest du ein Python-Skript namens serialize.py im Verzeichnis ~/project, das ein Python-Objekt in einen JSON-String serialisiert.

Schreibe den folgenden Code in serialize.py:

## serialize.py
import json

data = {
    'name': 'Professor Bytes',
    'ability': 'Telepathy',
    'is_human': True,
    'data_analysis_scores': [88, 92, 79]
}

with open('/home/labex/project/data.json', 'w') as json_file:
    json.dump(data, json_file)

print("Data serialized to 'data.json'")

Führe dieses Skript in deinem Terminal aus, indem du zum Verzeichnis ~/project navigierst und den Befehl ausführst:

python serialize.py

Anschließend untersuche den Inhalt von data.json, um zu bestätigen, dass deine Daten korrekt serialisiert wurden:

cat data.json

Du solltest die JSON-Darstellung deines Python-Objekts sehen:

{"name": "Professor Bytes", "ability": "Telepathy", "is_human": true, "data_analysis_scores": [88, 92, 79]}

Die Beherrschung der Deserialisierung mit JSON

Nachdem du die Serialisierung erfolgreich abgeschlossen hast, ist es jetzt an der Zeit, die JSON-Datei wieder in ein Python-Objekt umzuwandeln. Dieser Prozess wird als Deserialisierung bezeichnet.

Öffne deserialize.py im Verzeichnis ~/project mit dem folgenden Code:

## deserialize.py
import json

with open('/home/labex/project/data.json', 'r') as json_file:
    data = json.load(json_file)

print("Name:", data['name'])
print("Ability:", data['ability'])
print("Is Human:", data['is_human'])
print("Data Analysis Scores:", data['data_analysis_scores'])

Führe das Deserialisierungsskript in deinem Terminal aus:

python deserialize.py

Die Ausgabe sollte den Inhalt anzeigen, der zuvor in data.json serialisiert wurde:

Name: Professor Bytes
Ability: Telepathy
Is Human: True
Data Analysis Scores: [88, 92, 79]

Zusammenfassung

In diesem Lab haben Sie die Grundlagen der Datenserialisierung mit Python untersucht, eine unschätzbare Fähigkeit für Python-Programmierer in diesem digitalen Zeitalter. Sie haben den Prozess der Umwandlung von Python-Objekten in das JSON-Format und umgekehrt erkundet und gelernt, sich nahtlos zwischen komplexen Datenstrukturen und einer von Maschinen interpretierbaren Form zu verbinden. Diese Schritte sind grundlegend für den Datenaustausch und die Speicherung in modernen Anwendungen, und das Beherrschen davon ist ein entscheidender Sprung zum Werden eines kompetenten Python-Entwicklers. Mit dieser neuen Fähigkeit haben Sie nicht nur sich selbst, sondern auch die gesamte SAG ermächtigt, in eine Zukunft voranzutreiben, in der Menschen und Maschinen ohne Barrieren kommunizieren können. Ihre Errungenschaften heute markieren einen wichtigen Schritt in der Entwicklung der Mensch-Maschine-Interaktion. Herzlichen Glückwunsch, junger Meister!