JSON을 OrderedDict에 로드할 수 있나요?
JSON 직렬화에서 OrderDicts는 다음과 같습니다. 입력으로 활용됩니다. 그러나 중요한 질문이 제기됩니다. 출력으로도 기능할 수 있습니까? 그렇다면 프로세스는 무엇입니까?
OrderedDicts의 출력으로서의 JSON
예, OrderDicts는 실제로 JSON 출력 역할을 할 수 있습니다. 이는 JSONDecoder 내에서 object_pairs_hook 인수를 지정하여 달성됩니다. 문서에 언급된 대로 이는 다음 예에서 보여주는 접근 방식입니다.
>>> json.JSONDecoder(object_pairs_hook=collections.OrderedDict).decode('{"foo":1, "bar": 2}') OrderedDict([('foo', 1), ('bar', 2)]) >>>
대체 JSON 출력 매개변수
편의를 위해 이 매개변수를 전달할 수도 있습니다. json.loads에 직접(디코더 필요 없음) 예):
>>> 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 } >>>
OrderedDicts에 JSON 데이터 로드
마찬가지로 JSON 데이터는 json.load를 사용하여 동일한 방식으로 OrderDicts에 로드할 수 있습니다.
>>> data = json.load(open('config.json'), object_pairs_hook=OrderedDict)
위 내용은 JSON 출력이 OrderedDict가 될 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!