python中json和异常总结

1.json

1.1 json是一种通用的数据格式

1.2 json是一种什么样的数据格式(通用)

一个json有且只有一个数据,唯一的这个数据必须是json支持的类型的数据
json支持的类型:
数字 - 包含所有的整数和小数,表示的时候直接写 例如:900,-23
字符串 - 只能用双引号("abc")支持转义字符
布尔 - true和false两个值
空值 - null
数组 - 相当于python中的列表:[元素1,元素2] (元素必须是json数据类型)
字典 - 相当于python中的字典,但是键只能是字符串,例如:{"name":"小明""age":18}

1.3 python数据和json数据之间的相互转换

python 提供一个json模块,这个模块中有两个函数专门用来支持json和python的相互转换
json          -->        python
数字                      int/float
字符串                     str,可能双引号会变成单引号
布尔值                     bool,true->True,false->False
空值                       null->None
数组                       list
字典                       dict

loads(json格式的字符串)   -   将json格式的字符串转换成对应的python数据
json格式的字符串:字符串内容是一个合法的json数据(去掉字符串外面的引号,剩下的部分是一个合法的json数据)

python                 ->            json
int/float                            数字
str                                  字符串,单引号会变成双引号
bool                                 True->true,False->false
list/tuple                           数组  
dict                                 字典;键会转换成字符串
None                                 null

dumps(python数据)   -   将python数据转换为对应的json格式的字符串
100 -> '100'
True -> 'true'

### json转换为python
import json
result = json.loads('"abc"')
print(result)

result = json.loads('["abc",123,true,null]')
print(result)

### python转换为json

result = json.dumps([100,'abc',True,None])
print(result,type(result))
result1 = json.loads(result)
print(result1)

# import json
# result = json.dumps([])
# print(result,type(result))
# result1 = json.loads(result)
# print(result1,type(result1))

2.异常

程序报错就叫程序异常
如果程序出现异常会终止程序的执行

2.1 捕获异常

异常捕获就是让程序中指定的代码段在出现异常后不终止程序的执行,让程序接着执行

2.2 如何捕获异常

结构一:捕获任意异常
try:
    需要抛出异常的代码
except:
    捕获到异常后会执行的代码

结构二:捕获指定类型异常
try:
    需要抛出异常的代码
except 异常类型:
    捕获到异常后会执行的代码

结构三:同时捕获多种异常
try:
    需要抛出异常的代码
except (异常类型1,异常类型2):
    捕获到异常后会执行的代码

结构四:同时捕获多种异常
try:
    需要抛出异常的代码
except 异常类型1:
    处理方法1
except 异常类型2:
    处理方法2
.....    

结构五:可以在前面几种结构后面加finally 后接代码段
finally后面的代码段都会执行(不管是否出现异常或者异常是否被捕获)

2.3抛出异常 - 主动抛出异常

raise 异常类型
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

azured_xu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值