Heim > Backend-Entwicklung > Python-Tutorial > Kann die JSON-Ausgabe ein OrderedDict sein?

Kann die JSON-Ausgabe ein OrderedDict sein?

Linda Hamilton
Freigeben: 2024-12-06 09:29:12
Original
813 Leute haben es durchsucht

Can JSON Output Be an OrderedDict?

OrderedDicts als JSON-Ausgabe verwenden

Kann JSON in ein OrderedDict geladen werden?

In der JSON-Serialisierung können OrderDicts geladen werden als Inputs genutzt. Es stellt sich jedoch eine entscheidende Frage: Können sie auch als Outputs fungieren? Wenn ja, wie läuft der Prozess ab?

JSON als Ausgabe in OrderedDicts

Ja, OrderDicts können tatsächlich als JSON-Ausgaben dienen. Dies wird durch die Angabe des Arguments object_pairs_hook innerhalb von JSONDecoder erreicht. Wie in der Dokumentation erwähnt, wird dieser Ansatz im folgenden Beispiel demonstriert:

>>> json.JSONDecoder(object_pairs_hook=collections.OrderedDict).decode('{"foo":1, "bar": 2}')
OrderedDict([('foo', 1), ('bar', 2)])
>>> 
Nach dem Login kopieren

Alternative JSON-Ausgabeparameter

Der Einfachheit halber können Sie diesen Parameter auch übergeben direkt zu json.loads (ohne die Notwendigkeit einer Decoder-Instanz):

>>> import json
>>> from collections import OrderedDict
>>> data = json.loads('{"foo":1, "bar": 2}', object_pairs_hook=OrderedDict)
>>> print json.dumps(data, indent=4)
{
    "foo": 1,
    "bar": 2
}
>>> 
Nach dem Login kopieren

Laden von JSON-Daten in OrderedDicts

Ähnlich können JSON-Daten mit json.load auf die gleiche Weise in OrderDicts geladen werden:

>>> data = json.load(open('config.json'), object_pairs_hook=OrderedDict)
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonKann die JSON-Ausgabe ein OrderedDict sein?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage