python异常处理

python异常处理

为何要进行异常处理:因为在正常情况下,当程序出现错误时,程序抛出异常,并且会自动终止运行。而有时候我们希望,当程序出错时,程序既能抛出异常,又能不中断运行,又或者,在有的时候,在某个特定的条件下,我需要程序去抛出异常,从而中断程序,因此便有了“异常处理”!

一、try:except:用法

程序正常运行,则执行try里面的代码,程序异常,则执行except里面的代码,except可捕获多个具体异常。

# 例如
number = 20
a = [-4, -2, 0, 2, 4]
for i in range(len(a)):
    try:
        result = number/a[i]  # 分母为0时,抛出异常
        print(result)
    except Exception as e:  # 所有的普通异常都包含在Exception里面
        print("出错啦!", e)
        

运行结果
在这里插入图片描述
更加丰富的结构

# 例如

try:
    print("我是尝试运行")
except NameError:  # 捕获具体异常
    print("命名错误!")
except ZeroDivisionError:
    print("分母不能为0")
else:
    print("我是try执行完后,执行")
finally:
    print("无论如何,我最终都会执行")

运行结果
在这里插入图片描述

二、raise用法

在某个特定的条件下,抛出异常,从而中断程序

# 例如
name = input("请输入您的用户名:")
if name == "小明":
    raise ("黑名单用户,禁止登登录!")  # raise自定义自动抛出异常

运行结果
在这里插入图片描述

三、assert断言

# 例如
a = 2
b = 3
assert a < b  # 当条件为True时,正常运行
print("前面ok")
assert a > b  # 当条件为False时,程序抛出异常,程序中断
print("我是后面的")

运行结果
在这里插入图片描述

  • 5
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值