1. json
1. 什么是json
- json和xml都是通用的数据格式,可以用于不同编程语言之间的数据交流。
- json相对xml更小更轻、传输速度更快;xml相对json更安全。
2. json数据
json数据格式的要求:一个json有且只有一个数据;唯一的这个数据必须是json支持的类型。
json支持类型:
json | 描述 |
---|---|
数字 | 包括整数和小数,表示的时候直接写:100、23.5、-3.14、3e4 |
字符串 | 用双引号引起来的数据:“abc”、“小明”、“abc\n123\u4e00” |
布尔 | 只有 true 和 false 两个值 |
空值 | null |
数组 | 相当于Python的列表:[数据1, 数据2, …] |
字典 | 相当于Python的字典,但是键只能是字符串:{键1:值1, 键2:值2,…} |
3. Python数据和json数据之间的转换
json | python |
---|---|
数字 | 数字 |
字符串("") | 字符串(’’) |
布尔(true、false) | 布尔(True、False) |
空值(null) | 空值(None) |
数组 | 列表 |
字典 | 字典 |
json -> python
python中提供了json模块专门用来处理Python中的json数据
import json
json.loads(json格式字符串)
- 将json格式字符串对应的json数据转换Python数据
注意:json格式字符串指的是内容是json数据的字符串import json result = json.loads('"abc"') # "abc" -> 'abc' print(result, type(result)) result = json.loads('100') # 100 -> 100 print(result, type(result)) result = json.loads('true') # true -> True print(result, type(result)) result = json.loads('[100, "小明", null, true, false]') print(result, type(result)) # 运行结果 ''' abc <class 'str'> 100 <class 'int'> True <class 'bool'> [100, '小明', None, True, False] <class 'list'> '''
python -> json
json.dumps(Python数据)
- 将指定Python数据转换成对应的json格式字符串
import json
json.dumps(100) # '100'
json.dumps('abc') # '"abc"'
json.dumps(True) # 'true'
result = json.dumps({'a': 10, 20: 30, 'name': 'xiaoming', 'isMarred': True})
print(result, type(result))
# 运行结果
'''
{"a": 10, "20": 30, "name": "xiaoming", "isMarred": true} <class 'str'>
'''
本文含有隐藏内容,请 开通VIP 后查看