一、概念
JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式。
json是一种轻量级的"前端后端"以"及网络传输"的数据交换格式,就是一串字符串,只不过元素会使用特定的符号标注。
{} 双括号表示对象,
[] 中括号表示数组,
”” 双引号内是属性或值,
: 冒号表示后者是前者的值(这个值可以是字符串、数字、也可以是另一个数组或对象)。
也就是说在后端可以将各种后端复杂的数据格式,转换成json格式的字符串,然后在将转后的json数据格式传递给前端。因为前端和后端一般都是两种语言编写,但是现在大部分都语言都支持json语言。所以就可以解析不同语言传递多来的数据。
举个例子:
广东人和河北人都说方言,对方都听不懂,如果双方都说普通话,对方就可以交流了。
广东人和河北人相当于前端和后端,json就相当于普通话
二、python解析json
Python3 中可以使用 json 模块来对 JSON 数据进行编解码,它包含了两个函数:json.dumps(): 对数据进行编码。将python数据转换成json
json.loads(): 对数据进行解码。将json转换成python数据
#!/usr/bin/python3
import json
zs = {
'name': 'zhangsan',
'age': 20,
'genger': 'boy',
'fraction':100
}
print('zs = {}'.format(zs))
print('zs的类型 = {}'.format(type(zs)))
zsjson = json.dumps(zs)
print('zsjosn = {}'.format(zsjson))
print('zsjson的类型 = {}'.format(type(zsjson)))
[root@node7 python]# ./test.py
zs = {'name': 'zhangsan', 'age': 20, 'genger': 'boy', 'fraction': 100}
zs的类型 = <class 'dict'>
zsjosn = {"name": "zhangsan", "age": 20, "genger": "boy", "fraction": 100}
zsjson的类型 = <class 'str'>