异常处理(抓坏人)
异常的定义:程序在运行过程中出现的问题/错误,影响程序的正常执行。
异常的组成:
①出现异常的文件 ②出现异常的代码所在行数 ③出现异常的具体代码 ④异常的类型 ⑤具体的异常信息
异常处理的几种方式:
①try...except...
语法:
try:
监控的代码块(一般放比较重要的代码)
except:
如果监控的代码出现问题,如何处理?
发生异常之前的代码正常执行,但发生异常之后的代码仍然不会执行,而是直接执行except里的代码
若监控的代码没有异常,则try里的所有代码均会执行,且不会执行except里的代码
②try...except 错误类型 as e(根据错误类型抓错误信息)
语法:
try:
监控的代码块(一般放比较重要的代码)
except 错误类型 as x:--->此处x为取的别名
如果监控的代码出现问题,如何处理?
▼Python的标准异常(错误类型)
BaseException:所有错误的基类
Exception:常规错误的基类
(1)我们平时所见到的错误都属于常规错误,所以上面BaseException和Exception都可使用。
(2)BaseException和Exception两种错误类型虽然都可以抓取到错误信息,但是并不准确(这两种几乎算是万能的是无论什么错误类型都会抓取到)。
(3)但实际使用中,我们需要明确的错误类型和错误信息,以便于定位问题。
(4)但是使用明确的错误类型抓取时,如果实际错误不是这个类型就会造成抓取不成功,从而导致实际错误不能被处理,而导致程序中止执行。
③try...except...finally
语法:
try:
监控的代码块(一般放比较重要的代码)
except 错误类型 as x:--->此处x为取的别名
如果监控的代码出现问题,如何处理?
finally:
无论是否有异常都需要运行的代码
当try里面的代码没有异常时
当try里面的代码有异常时
总结:不管监控的代码是否有异常,finally里面的代码都会执行。
④try...except...else
语法:
try:
监控的代码块(一般放比较重要的代码)
except 错误类型 as x:--->此处x为取的别名
如果监控的代码出现问题,如何处理?
else:
只有监控代码没有异常时才会运行的代码
当try里面的代码没有异常时
当try里面的代码有异常时
总结:try与else是一起的,只有当try里面的代码没有异常的时候才会执行else里面的代码。
页:
[1]