Maison >développement back-end >Tutoriel Python >La sortie JSON peut-elle être un OrderedDict ?
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!