📜  如何将 JSON 转换为 Ordereddict?

📅  最后修改于: 2022-05-13 01:54:20.455000             🧑  作者: Mango

如何将 JSON 转换为 Ordereddict?

JSON 的完整形式是 JavaScript Object Notation。这意味着由编程语言中的文本组成的脚本(可执行)文件用于存储和传输数据。 Python通过一个名为json的内置包支持 JSON。要使用此功能,我们在Python脚本中导入json包。 JSON 中的文本是通过引用字符串完成的,它包含 {} 内键值映射中的值。它类似于Python中的字典。

OrderedDict是一个字典子类,它记住第一次插入键的顺序。 dict()OrderedDict()之间的唯一区别在于: OrderedDict保留键插入的顺序。常规dict不跟踪插入顺序并迭代它以任意顺序给出值。

在本文中,我们将讨论将JSON转换为Ordereddict的各种方法。

方法#1

通过为JSONDecoder指定object_pairs_hook参数。

Python
# import required modules
import json
from collections import OrderedDict
  
# assign json file
jsonFile = '{"Geeks":1, "for": 2, "geeks":3}'
print(jsonFile)
  
# convert to Ordereddict
data = json.JSONDecoder(object_pairs_hook=OrderedDict).decode(jsonFile)
print(data)


Python
# import required modules
import json
from collections import OrderedDict
  
# assign json file
jsonFile = '{"Geeks":1, "for": 2, "geeks":3}'
print(jsonFile)
  
# convert to Ordereddict
data = json.loads(jsonFile, 
                  object_pairs_hook=OrderedDict)
print(data)


输出:

{"Geeks":1, "for": 2, "geeks":3}
OrderedDict([(u'Geeks', 1), (u'for', 2), (u'geeks', 3)])

方法#2

通过将 JSON 数据作为参数传递给 json.loads()。

Python

# import required modules
import json
from collections import OrderedDict
  
# assign json file
jsonFile = '{"Geeks":1, "for": 2, "geeks":3}'
print(jsonFile)
  
# convert to Ordereddict
data = json.loads(jsonFile, 
                  object_pairs_hook=OrderedDict)
print(data)

输出:

{"Geeks":1, "for": 2, "geeks":3}
OrderedDict([(u'Geeks', 1), (u'for', 2), (u'geeks', 3)])