一、异常
1、错误与异常的区别
- 错误与异常都是在程序编译和运行时出现的错误
- 异常可以被开发人员捕捉和处理
- 错误一般是系统错误,一般不需要开发人员处理(也无法处理),比如内存溢出
2、什么是异常
- 异常即是一个事件,该事件会在程序执行过程中,影响了程序的正常执行
- 有些是由于拼写、配置、选项等等各种引起的程序错误,有些是由于程序功能处理逻辑不完善引起的漏洞,这些统称为程序中的异常
3、异常处理流程
4、异常解决方案
- 如果是拼写、配置等引起的错误,根据出错信息进行排查错误出现的位置进行解决
- 如果是程序设计不完善引起的漏洞,根据漏洞的情况进行设计处理漏洞的逻辑
5、异常捕获与异常处理
try:{
'执行代码'
}
except:{
'发生异常时执行的代码'
}
try:
num1 = int(input('输入一个除数:'))
num2 = int(input('输入一个被除数:'))
print(num1 / num2)
except:
print('这是一个异常')
try:
num1 = int(input('输入一个除数:'))
num2 = int(input('输入一个被除数:'))
print(num1 / num2)
except ZeroDivisionError:
print('被除数不能为0')
except ValueError:
print('输入的需要是数值型')
except:
print('这是一个异常')
else:
print('程序没有发生异常')
finally:
print('无论有没有异常都执行')
6、手动抛出异常
x = 10
if x > 5:
raise Exception('这是抛出都异常信息')
7、自定义异常
class MyException(Exception):
def __init__(self, value1, value2):
self.value1 = value1
self.value2 = value2
raise MyException('value1', 'value2')