Python基础之六-文件读写和捕获异常

Python基础之六-文件读写和捕获异常

一、捕获异常
一般高级编程语言都会提供程序运行过程中遇到错误的处理机制,Python也是,它提供了一套try…except…finally…的错误处理机制
如:
try:
print(“try…”)
r = 10/0
print(‘result:’, r)
except ZeroDivisionError as e:
print(“ZeroDivisionError :”, e)
finally:
print(‘finally…’)
print(‘End’)

当我们认为某些代码可能会出错时,就可以用 try来运行这段代码,如果执行出错,则后续代码不会继续执行,而是直接跳转至错误处理代码,即except语句,执行完except后,如果有finally语句块,则执行finally语句块
上述代码执行结果:

在这里插入图片描述
从输出可以看到,当错误发生时,后续语句print(‘result:’,r)不会被执行,except捕获到ZeroDivisionError,因此被执行。最后,finally语句被执行。然后程序继续按照流程往下执行
如果将r = 10/0改为0/10,则result: 5就会被执行到而except语句块不会被执行到,但是finally如果有则一定会被执行
错误的种类很多,如果需要捕获多种错误可以有多个 except语句块针对不同种类的错误进行不同的错误处理
try:
print(“try…”)
r = 10 / int(‘a’)
print(‘result:’, r)
except ValueError as e:
print('except:", e)
except ZeroDivisionError as e:
print(“except:”, e)
finally:
print(‘finally…’)
print(‘End’)

int()函数可能会抛出ValueError,所以我们用一个except捕获ValueError, 用另一个except捕获ZeroDivisionError
此外,如果没有错误发生,可以在except语句块后面加上else, 当没有发生错误会自动执行else语句:

try:
print(“try…”)
r = 10 / int(‘a’)
print(‘result:’, r)
except ValueEr

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值