四 python异常处理

前言

       对于每一种高级语言来说,异常处理结构不仅能够提高代码的健壮性,而且也提高了代码的容错性,从而不会因为使用者错误输入造成系统崩溃,也可以通过异常处理结构为使用者提供更加友好的错误提示。在python开发过程中引发程序异常错误的原因有很多中,较为常见的有:除0、下标越界等。
       Python中提供了很多不同形式的异常处理结构,其基本利用思路都是:先尝试执行代码,再进行处理可能发生的错误。

try…except…结构

try:
    a = input("请输入被除数:")
    b = input("请输入除数:")
    c = float(a)/float(b)
    print("除的结果是:", c)
except BaseException as e:
    print(e)

结果:

请输入被除数:6
请输入除数:5
除的结果是: 1.2

发生异常:

请输入被除数:1
请输入除数:0
float division by zero 	#被除数为0

try…except…else结构

与上面差不多,如果 try 块中没有抛出异常,则执行 else 块。如果 try 块中抛出异常,则执行 except 块,不执行 else 块。

try:
    a = input("请输入被除数:")
    b = input("请输入除数:")
    c = float(a)/float(b)
except BaseException as e:
    print(e)
    print("我是异常")
else:
    print("除的结果是:",c)

正常输出:

请输入被除数:45
请输入除数:15
除的结果是: 3.0

有异常:

请输入被除数:1354
请输入除数:0
float division by zero

try…except…finally…结构

try…except…finally 结构中,finally 块无论是否发生异常都会被执行;通常用来释放 try 块中申请的资源。

try:
    a = input("请输入被除数:")
    b = input("请输入除数:")
    c = float(a)/float(b)
except BaseException as e:
    print(e)
    print("我是异常")
else:
    print("除的结果是:", c)
finally:
    print("程序结束")

正常执行:

请输入被除数:8
请输入除数:2
除的结果是: 4.0
程序结束

有异常:

请输入被除数:aaaa
请输入除数:123
could not convert string to float: 'aaaa'
程序结束

可以发现不管有没有异常都执行了finally中的语句。

常见的异常

只需要记住exception万能异常就行了,什么异常度可以接受,其他的可以根据字面意思理解。
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值