HOWTO · Python

Durch Json-Objekt in Python iterieren

Dieses Tutorial zeigt, wie Sie ein json-Objekt in Python durchlaufen

Auf dieser Seite

JSON (JavaScript Object Notation) ist ein beliebtes Datenformat zum Speichern und Austauschen von Daten.

In diesem Lernprogramm wird die Methode zum Durchlaufen eines JSON-Objekts in Python erläutert.

Verwenden Sie json.loads() mit Hilfe der for-Schleife, um durch ein JSON-Objekt in Python zu iterieren

Ein integriertes Paket, json, wird von Python bereitgestellt, das importiert werden kann, um mit JSON-Formulardaten zu arbeiten. In Python ist JSON als Zeichenkette vorhanden oder in einem JSON-Objekt gespeichert.

Wir verwenden json.loads(str), um den String in ein Dictionary zu analysieren. Darüber hinaus verwenden wir die for-Schleife für den Iterationsprozess durch das Dictionary.

Der folgende Code implementiert die Funktion json.loads() und die Schleife, um ein JSON-Objekt zu durchlaufen.

import json

jsonstring1 = '{"k1": "v1", "k2": "v2"}'

# Load JSON string into a dictionary
json_dicti = json.loads(jsonstring1)

# Loop along dictionary keys
for key in json_dicti:
    print(key, ":", json_dicti[key])

Ausgabe:

k1 : v1
k2 : v2

Beachten Sie, dass ein Python-Dictionary zurückgegeben wird, wenn der Befehl json.loads() ausgeführt wird, kein JSON-Objekt.

Wenn es sich um eine Datei handelt, die das JSON-Objekt enthält, kann die Datei mit der Funktion json.load() gelesen werden. Der folgende Code verwendet die Funktion json.load(), um die Datei zu analysieren, die das JSON-Objekt enthält.

Angenommen, die Datei mit dem Namen man.json enthält diese Daten.

{"fullname": "Tom", 
"languages": ["English", "German"]
}

Der Code zum Parsen dieser Datei ist unten.

import json

with open("man.json") as a:
    dict1 = json.load(a)
print(dict1)

Ausgabe:

{'fullname': 'Tom', 'languages': ['English', 'German']}

Mit der Funktion open() wird hier die JSON-Datei gelesen. Auch hier bekommen wir ein Dictionary, dict1. Danach kann der Iterationsprozess für das Dictionary durchgeführt werden.