第一种机制:try——except第二种机制:try——except——else第三种机制:try——except——else——finally
Python提供了异常处理机制,可以在异常出现时捕获,然后内部“消化”,让程序继续运行
格式:
try:
可能出现的代码
except 异常类型:
异常处理代码(报错后执行的代码)
例:
try:
n1=int(input('请输入第一个数字:'))
n2=int(input('请输入第二个数字:'))
result=n1/n2
print('结果为:',result)
except ZeroDivisionError:
print('除数为0,不能进行除法操作')
except ValueError:
print('只能输入数字串')
print('程序结束')
结果1:
请输入第一个数字:10
请输入第二个数字:0
除数为0,不能进行除法操作
程序结束
结果2:
第二种机制:try——except——else请输入第一个数字:q
只能输入数字串
程序结束
如果try块中没有抛出异常,则执行else块,如果try中抛出异常,则执行except块
第三种机制:try——except——else——finallyfinally块无论是否发生异常都会被执行,能常用来释放tey块中申请的资源
例:
try:
n1=int(input('请输入第一个数字:'))
n2=int(input('请输入第二个数字:'))
result=n1/n2
except baseException as e:
print('出错了',e)
else:
print('结果为:',result)
finally:
print('谢谢您的使用')
print('程序结束')
结果1:
请输入第一个数字:10
请输入第二个数字:0
出错了 division by zero
谢谢您的使用
程序结束
结果2:
请输入第一个数字:10
请输入第二个数字:2
结果为: 5.0
谢谢您的使用
程序结束
Python中常见的异常处理:
ZeroDivisionError:除(或取模)零IndexError:序列中没有此索引KeyError:映射中没有这个键NameError:未声明/初始化对象SyntaxError:Python语法错误ValueError:传入无效参数



