1.异常的基本概念
异常是一个事件,这个事件会在程序执行过程中发生,影响了程序的正常执行,是Python对象,表示一个错误。
2.异常处理
处理异常的语法:try/except语句
try:
a = input("请输入被除数:")
b = input("请输入除数:")
c = int(a) / int(b)
except ValueError as ve: 异常的类型 as后面是异常原因的名称
print("请输入数字")
print(ve)
except ZeroDivisionError: 异常的类型
print("除数不能为0")
else: 如果没有异常执行
print(c)
finally: 最终要执行的
print("over")
使用except不带任何异常类型:
try:
正常的操作
except:
发生异常,执行这个代码
else:
如果没有异常执行这个代码
except语句处理多个异常信息:
try:
正常的操作
except(Exception1[, Exception2[,...ExceptionN]]]):
发生以上多个异常中的一个,执行这个代码
else:
如果没有异常执行这个代码
3.try-finally语句
try-finally 语句无论是不是发生异常都会去执行最后的代码。
4.异常的调用
列:
def testError():
n=1/0
try:
testError()
except:
print('除数不能为0')
自定义异常类:
一般继承Exception,也可继承baseException
class TanError(Exception):
def __init__(self,age):
self.age=age
def __str__(self):
return self.age
def ag():
age=int(input('输入年龄:'))
if age<=0 or age>100:
raise TanError('年龄只能在0到100岁之间')
//raise 会抛出一个异常
try:
age()
except TanError as tan:
print(tan)