Heim  >  Artikel  >  Backend-Entwicklung  >  Wie greife ich in Python auf Daten aus konvertierten JSON-Wörterbüchern zu?

Wie greife ich in Python auf Daten aus konvertierten JSON-Wörterbüchern zu?

Patricia Arquette
Patricia ArquetteOriginal
2024-10-20 21:03:30835Durchsuche

How to Access Data from Converted JSON Dictionaries in Python?

Zugriff auf Daten in konvertierten JSON-Wörterbüchern

Beim Versuch, ein Wörterbuch in JSON zu konvertieren, kann es zu Schwierigkeiten beim Zugriff auf die konvertierten Daten kommen Objekt ist eine Zeichenfolge.

Betrachten Sie das folgende Beispiel:

<code class="python">r = {'is_claimed': 'True', 'rating': 3.5}
r = json.dumps(r)
file.write(str(r['rating']))</code>

Dieser Code versucht, das Feld „Bewertung“ in eine Datei zu schreiben, nachdem das Wörterbuch in JSON konvertiert wurde. Dies führt jedoch zu einem TypeError: String-Indizes müssen Ganzzahlen sein, nicht str.

Das Problem ergibt sich aus der Tatsache, dass json.dumps() das Wörterbuch in eine String-Darstellung konvertiert, nicht ein JSON-Objekt. Um auf die Daten zuzugreifen, müssen Sie die Zeichenfolge zunächst mit der Methode json.loads() zurück in ein Wörterbuch laden.

Stellen Sie sich json.dumps() als Speichermethode und JSON vor. Loads() als Abrufmethode. Hier ist ein aktualisiertes Codebeispiel:

<code class="python">import json

r = {'is_claimed': 'True', 'rating': 3.5}
r = json.dumps(r)
loaded_r = json.loads(r)
loaded_r['rating']  # Output 3.5
type(r)  # Output str
type(loaded_r)  # Output dict</code>

Loaded_r ist jetzt ein Wörterbuch und Sie können wie erwartet auf seine Felder zugreifen.

Das obige ist der detaillierte Inhalt vonWie greife ich in Python auf Daten aus konvertierten JSON-Wörterbüchern zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn