Maison >développement back-end >Tutoriel Python >La sortie JSON peut-elle être un OrderedDict ?

La sortie JSON peut-elle être un OrderedDict ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-06 09:29:12773parcourir

Can JSON Output Be an OrderedDict?

Utilisation de OrderedDicts comme sortie JSON

JSON peut-il être chargé dans un OrderedDict ?

Dans la sérialisation JSON, les OrderDicts peuvent être utilisés comme intrants. Cependant, une question cruciale se pose : peuvent-ils également fonctionner comme des résultats ? Si oui, quel est le processus ?

JSON comme sortie dans OrderedDicts

Oui, OrderDicts peut en effet servir de sorties JSON. Ceci est réalisé en spécifiant l'argument object_pairs_hook dans JSONDecoder. Comme mentionné dans la documentation, il s'agit de l'approche démontrée dans l'exemple suivant :

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

Paramètres de sortie JSON alternatifs

Pour plus de commodité, vous pouvez également transmettre ce paramètre directement vers json.loads (sans avoir besoin d'une instance Decoder) :

>>> 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
}
>>> 

Chargement des données JSON dans OrderedDicts

De même, les données JSON peuvent être chargées dans OrderDicts à l'aide de json.load de la même manière :

>>> data = json.load(open('config.json'), object_pairs_hook=OrderedDict)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn