七、异常处理

定义

程序运行时,如果解释器遇到错误会停止程序的执行并提示一些错误信息,这就是异常。程序停止执行并且提示错误信息即为抛出异常。

# 异常类型:异常描述
NameError: name 'a' is not defined

异常捕获

程序执行遇到异常时默认是终止代码执行,捕获异常可以让代码继续运行。

try:
	可能发生异常的代码
# 捕获任何类型的异常
except:
	发生异常执行的代码
	
# 捕获指定类型的异常,非指定异常类型仍会报错
except 异常类型:
	发生异常执行的代码

# 常见异常类的父类,可捕获常见异常,变量用于打印异常信息
except Exception as 变量:
	发生异常执行的代码

else:
	没有发生异常执行的代码
finally:
	无论有无异常都会执行的代码
try:
    num=input('请输入数字:')
    num=int(num)
except:
    print('输入错误')
else: 
    if(num%2==0):
        print(f'{num}是偶数')
    else:
        print(f'{num}是奇数')   
finally:
    print('程序运行结束')

在这里插入图片描述
在这里插入图片描述

异常传递

函数嵌套调用过程中,若被调用的函数发生的异常没有被捕获,会将这个异常向外层传递,传到最外层仍没有捕获则报错。

抛出异常raise

手动抛出异常,raise 异常类型/异常实例,会中断程序执行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值