如何将 Ordereddict 转换为 JSON?
在本文中,我们将学习如何将嵌套的 OrderedDict 转换为 JSON?在此之前,我们必须先了解一些概念:
- JSON 的完整形式是 JavaScript Object Notation。这意味着由编程语言中的文本组成的脚本(可执行)文件用于存储和传输数据。 Python通过一个名为 JSON 的内置包支持 JSON。要使用此功能,我们在Python脚本中导入 JSON 包。
- JSON 中的文本是通过引用字符串完成的,它包含 {} 内键值映射中的值。它类似于Python中的字典。 JSON 显示了类似于标准库 marshal 和 pickle 模块的用户的 API, Python本身支持 JSON 功能
- OrderedDict 是一个字典子类,它记住第一次插入键的顺序。 dict 和 OrderedDict() 之间的唯一区别是:
- OrderedDict 保留键插入的顺序。常规 dict 不跟踪插入顺序,迭代它会以任意顺序给出值。相比之下,OrderedDict 会记住项目插入的顺序。
为了定义OrderedDict ,我们在Python中使用 collections 模块。
Python3
# import package
from collections import OrderedDict
# define OrderedDict
od1 = OrderedDict([('1','one'),
('2','two')])
# display dictionary
print(type(od1))
print(od1)
Python3
# import package
from collections import OrderedDict
import json
# define OrderedDict
od1 = OrderedDict([('1','one'),
('2','two')])
# check type i.e; OrderedDict
print(type(od1))
# convert to json
od1 = json.dumps(od1)
# check type i.e; str
print(type(od1))
# view value
print(od1)
Python3
# import package
from collections import OrderedDict
import json
# define OrderedDict
od1 = OrderedDict([('1', 'one'),
('2', 'two')])
# check type i.e; OrderedDict
print(type(od1))
# convert to json
od1 = json.dumps(od1, indent=4)
# check type i.e; str
print(type(od1))
# view value
print(od1)
输出:
OrderedDict([('1', 'one'), ('2', 'two')])
要将OrderedDict 转换为 JSON,我们使用json.dumps() 。
- JSON 的完整形式是 JavaScript Object Notation。这意味着由编程语言中的文本组成的脚本(可执行)文件用于存储和传输数据。 Python通过一个名为 JSON 的内置包支持 JSON。要使用此功能,我们在Python脚本中导入 JSON 包。 JSON 中的文本是通过引用字符串完成的,它包含 {} 内键值映射中的值。它类似于Python中的字典。
- json.dumps()函数将Python对象转换为 JSON字符串。
蟒蛇3
# import package
from collections import OrderedDict
import json
# define OrderedDict
od1 = OrderedDict([('1','one'),
('2','two')])
# check type i.e; OrderedDict
print(type(od1))
# convert to json
od1 = json.dumps(od1)
# check type i.e; str
print(type(od1))
# view value
print(od1)
输出
{"1": "one", "2": "two"}
我们可以给出缩进值来显示字典模式。
蟒蛇3
# import package
from collections import OrderedDict
import json
# define OrderedDict
od1 = OrderedDict([('1', 'one'),
('2', 'two')])
# check type i.e; OrderedDict
print(type(od1))
# convert to json
od1 = json.dumps(od1, indent=4)
# check type i.e; str
print(type(od1))
# view value
print(od1)
输出:
{
"1": "one",
"2": "two"
}