JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。
Python 与 JSON 数据类型对应表:
Python | JSON |
---|---|
dict | object |
list、tuple | array |
str | string |
int、 float | number |
True | true |
False | false |
None | null |
1、json.dumps:将一个Python数据类型转换为JSON数据类型
import json
data_dict = {
"name": "YYY",
"year": 10000,
"height": 170,
"home": "四川"
}
data_list = [8, '22', 1, 22, '星辰']
j_dict = json.dumps(data_dict, indent=4) # indent参数为缩进的空格数
j_list = json.dumps(data_list)
print(j_dict)
print(j_list)
输出:
{
"name": "YYY",
"year": 10000,
"height": 170,
"home": "\u56db\u5ddd"
}
[8, "22", 1, 22, "\u661f\u8fb0"]
2、json.loads():将一个JSON数据类型转换为Python数据类型
import json
data_dict = '{"name": "YYY","year": 10000,"height": 170,"home": "四川"}'
data_list = '[8, "22", 1, 22, "星辰"]'
p_dict = json.loads(data_dict)
p_list = json.loads(data_list)
print(type(p_dict))
print(type(p_list))
输出:
<class 'dict'>
<class 'list'>
总结:json模块的dumps()和loads()用于数据类型的转换。
详情了解:https://baijiahao.baidu.com/s?id=1652241214837639808&wfr=spider&for=pc
3、json.dump():将Python对象转换为JSON(编码),并写入文件
import json
filename = 'File2.json'
data = (1, 2, 3, 4)
with open(filename, 'w') as f:
json.dump(data, f)
File2.json:
[1, 2, 3, 4]
4、json.load:将JSON数据类型转换为Python对象(解码)
import json
filename = 'File2.json'
with open(filename) as f:
data = json.load(f)
print(data)
File2.json:"I miss summer. I can swim and play with my friends in summer."
输出:I miss summer. I can swim and play with my friends in summer.
总结:json模块的load()、dump()用于编码和解码JSON数据,处理文件。
转换包含所有合法数据类型的 Python 对象、JSON数据类型!