在这篇文章中,让我们学习如何将python字典转换成JSON。首先让我们了解什么是JSON。JSON是javascript对象符号的缩写。JSON的结构类似于python中的字典。条件是,JSON的键必须始终是一个带双引号的字符串。 而且,与键对应的值可以是任何数据类型,如字符串、整数、嵌套JSON等。JSON的返回类型是 "字符串 "对象类型。
例子
import json
a = '{ "One":"A", "Two":"B", "Three":"C"}'
python中的字典是一种内置的数据类型,用于将数据存储在一个与值格式相关的键中。存储在字典中的数据是无序的,唯一的对(键总是唯一的,值可以重复),并且是可变的。dictionary 的返回类型是 'dict' 对象类型。
例子
#Dictionary in python is built-in datatype so
#no need to import anything.
dict1 = { 'One' : 1, 'Two' : 2, 'C': 3}
将 Dict 转换成 JSON
Python 确实有一个叫做 "json" 的默认模块,可以帮助我们将不同的数据形式转换为 JSON。我们今天使用的函数是 The json. dumps() 方法允许我们将一个 python 对象 (在本例中是 dictionary) 转换为一个等价的 JSON 对象:
- 首先,我们导入json 模块
- 为需要转换为JSON字符串的字典指定一个变量名。
- 使用json.dumps*(variable*)来转换
注意:不要混淆json.dumps和json.dump。json.dumps() 是一个可以将Python对象转换成JSON字符串的方法,而json.dump() 是一个用于将JSON写入/转储到文件的方法。
json的语法
json.dumps(dict,intend)
- dict- python字典我们需要转换
- intend - 缩进的数量(代码行开头的空格)
import json
dict1 ={
"Name": "Adam",
"Roll No": "1",
"Class": "Python"
}
json_object = json.dumps(dict1, indent = 3)
print(json_object)
输出
{
"Name": "Adam",
"Roll No": "1",
"Class": "Python"
}
使用 sort_keys 属性将 dictionary 转换为 JSON
在前面讨论的dumps()方法中使用sort_key属性会以排序的方式返回一个 JSON 对象。如果该属性被设置为 TRUE,那么字典就会被排序并转换为一个 JSON 对象。如果它被设置为 FALSE,那么 dict 就以它的方式转换,而不进行排序:
import json
dict1 ={
"Adam": 1,
"Olive" : 4,
"Malcom": 3,
"Anh": 2,
}
json_object = json.dumps(dict1, indent = 3, sort_keys = True)
print(json_object)
输出
{
"Adam": 1,
"Anh": 2,
"Malcom": 3,
"Olive": 4
}
将嵌套的 dict 转换为 JSON
在dict内部声明的dict被称为嵌套dict。dumps()方法也可以将这种嵌套dict转换为json:
dict1 ={
"Adam": {"Age" : 32, "Height" : 6.2},
"Malcom" : {"Age" : 26, "Height" : 5.8},
}
json_object = json.dumps(dict1, indent = 3, sort_keys = True)
print(json_object)
输出
{
"Adam": {
"Age": 32,
"Height": 6.2
},
"Malcom": {
"Age": 26,
"Height": 5.8
}
}
总结
在这篇文章中,我们讨论了如何将 dictionary 数据结构转换为 JSON 以便进一步处理。我们使用 json 模块将 dictionary 序列化为 JSON。