Day14-json和异常
01-json数据
1.什么是json
json是一种数据格式;几乎所有的高级语言都支持这种数据格式的处理,
所以json主要用在不同语言之间的数据交流。
2.json格式
json格式的要求:
- 一个json有且只有一个数据
- 唯一的 这个数据必须是json支持的数据类型的数据
json支持的数据类型:
- 数字类型(Number) - 所有数字对应的类型,表示的时候直接写。支持科学计数法
- 字符串(String) - 用双引号""引起来的字符集(只能是双引号)
- 布尔(Boolean) - 只有true 和 false 两个值
- 数组(Array) - 相当于python的列表
- 字典(Dictionary) - 相当于python中的字典,key只能是字符串
- 空值 - null,相当于python的None
json数据和python数据之间的相互转换
python中提供一个json模块,专门用来提供处理json数据相关的函数
- json数据转python数据
"""
python -> json
int/float 数字
字符串 字符串(引号会变成双引号)
布尔 布尔(首字母会变成小写)
列表、元组 数组(元素也会自动转换)
字典 字典(key全部会自动变成字符串)
None null
json.dumps(python数据) - 将指定的python数据转换json格式的字符串
"""
result = json.dumps((10, [10, 'abc'], {10: 20, 'a': 'b'}))
print(result, type(result))
02-异常捕获
# 1.什么是异常
# 报错
# 执行程序的过程中如果出现异常,程序会直接结束(实际是线程结束)
# 2.什么是异常捕获
"""
1)
异常捕获就是让程序在出现异常的时候,不崩溃继续执行。
2)
不是任何异常都可以捕获,只有在明知道某段代码会出现异常但是又不能或者不方便通过修改代码
来避免,这个时候就可以对异常捕获。
"""
# 3.怎么捕获异常
"""
方法一:捕获代码段1中所有异常
try:
需要捕获异常的代码段 - 代码段1
except:
捕获到异常后会执行的代码段
其他代码
执行过程:先执行try里面的代码段,执行过程中如果出现异常,程序不崩溃,马上执行except
后面的代码段,执行完后执行其他代码;
如果执行try没有异常,except不会执行,直接执行其他代码
方法二:
try:
需要捕获异常的代码段
except 异常类型:
捕获到异常后会执行的代码段
方法三:捕获多种异常,对不同的异常做相同的处理
try:
需要捕获异常的代码段
except (异常类型1,异常类型2,...):
捕获到异常后会执行的代码段
方法四:捕获多种异常,对不同的异常做不同的处理
try:
需要捕获异常的代码段
except 异常类型1:
代码块1
except 异常类型2:
代码块2
"""
# 4.finally - 写遗书
"""
try:
需要捕获异常的代码段
except 异常类型1:
代码块1
except 异常类型2:
代码块2
finally:
代码块3
代码块3无论如何都会执行
"""
# def input1():
# try:
# age = int(input('请输入年龄:'))
# print(f'age:{age}')
# except:
# return input1()
# return age
# input1()
# 5.抛出异常 - 主动让程序崩溃
# raise 异常类型
# 异常类型可以是系统异常类型也可以是自定义的异常类型