一、什么是异常?
异常指的是软件在运行的过程中,由于某些原因引起程序错误,如:int(input(":")),里面接收数值,你非得输字符串,惹得程序急眼了
异常不等于错误
二、异常处理
可以使用try/except语句捕捉异常,语法如下:
如:输入的类型问题
1.正常情况:假如我们输入一个正确的数字,运行结果:可以看出并不会执行except中的语句,程序正常执行
2.不正常情况:假如输入错误的类型:会跳过第3行代码,接着跳至except中去执行
3.如果想知道是何种异常,可以在except后加上异常的类型,使用别名来描述
except ValueError as v:
print("异常ing:",v)
结果如图: 我们可以明确的看出异常原因
三、多个异常处理
常见的异常
ValueError、KeyError、KeyboardInterrupt、ArithmeticError、FloatingPointError、IndexError、SyntaxError ...
第一种写法:
try:
pass
except KeyboardInterrupt:
pass
except BlockingIOError:
pass
except EOFError:
pass
第二种写法(不推荐,然迷子):
try:
pass
except (KeyboardInterrupt, KeyError, ValueError) as e:
print("异常ing",e)
四、finally关键字
finally后无论异常否都要执行
正常 非正常
python也支持这里面使用else语句,在程序正常执行时才会调用
五、自定义异常
1.定义一个类,之后让这个类继承Exception\BaseException
2.人为的抛出异常:raise关键字
示例: