- 什么是json
json和xml都是通用的数据格式,可以用于不同编程语言之间的数据交流,
json相关xml更小更轻,传输速度更快;xml相对json更安全。 - json数据
json数据格式的要求:一个json有且只有一个数据;唯一的这个数据必须是json支持的类型的数据。
json支持的类型:
1)数字:包括整数和小数,表示的时候之间写。
2)字符串:用双引号引起来的数据:‘小明’
3)布尔: true false
4)空值: null
5)数组: python的列表
6)字典:相当于python的字典,但是键只能是字符串:{键1:值1} - python数据和json数据之间的相互转换。
python中提供json模块专门用来处理python中的数据
import json
1)json转python
“”"
json python
数字 数字
字符串"" 字符串(双引号变单引号)
布尔 布尔(true-True)
空值 空值(null-None)
数组 列表
字典 字典
对应的函数:json.loads(json格式字符串) ->将json格式字符串对应的json数据转换python数据。
注意:json格式字符串:字符串内容指的是内容是json数据的字符串。
result = json.loads('"abc"') print(result,type(result)) # abcresult = json.loads('100') print(result,type(result)) # 100 result = json.loads('true') print(result,type(result)) # True
2)python转json
python json
int、float 数字
str 字符串
bool Ture-true
None null
列表、元组 数组
字典 字典
对应的函数:json.dumps(python数据) 将指定Python数据转换成对应的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}'
补充:抛出异常 - 主动让程序崩溃
语法:raise 异常类型
说明:
1)raise - 关键字;固定写法
2)异常类型 - 可以是系统提供的异常类型(例如:IndexError、ValueError、KeyError、TypeError等),也可以是自定义错误类型(自定义错误类型必须是Exception的子类)