json数据
1. json数据
为了可以让不同编程语言的程序之间可以进行有效的数据传输,我们在传输数据的时候一般使用通用的数据格式:json、xml
json相比xml更轻量级(传输相同的时候json格式比xml格式更小),所有现在绝大部分的数据接口的数据格式都是json。
2.json格式
json格式数据的要求:一个json只有一个数据;唯一的这个数据必须是json支持的数据类型的数据。
# json支持的数据类型:
数字 - 包含整数和小数
字符串 - 用双引号引起来的数据
布尔 - true、false
空值 - null
数组 - 相当于python的列表,[数据1, 数据2, 数据3, ...]
字典 - 键必须是字符串,{键1: 值1, 键2: 值2, ...}
3. python中的json模块
import json
# 1)将json数据转换成对应的python数据
"""
json python
数字 int、float
字符串 str(双引号会变单引号)
布尔 true -True; false -False
null None
数组 列表
字典 字典
"""
# json.loads(json格式的字符串) - 将json数据转换成对应的python数据(json格式字符串指的是内容是json数据的字符串)
print(json.loads('"abe"')) # 'abc'
print(json.loads('100') # 100
print(json.loads('[100, "abc", true, null]')) # [100, 'abc', True, None]
# 2)将python数据转换成对应的json数据
# json.dumps(python格式字符串) - 将python数据转换成对应的json数据
users = [
{'name': 'abc', 'pw': '127233', 'is_login': True},
{'name': 'xiaoming', 'pw': '1112', 'is_login': True},
{'name': 'zhangsan', 'pw': '23123', 'is_login': False},
{'name': 'lisi', 'pw': '2344', 'is_login': True}
]
result = json.dumps(users)
print(result)