python抛出异常的关键字_学好Python异常处理的四个关键词与四种结构

以我自己的职业经历来说,我情愿自己去针对一项重现写代码,也不愿意去承接别人的代码。我想,这是大部分码农的心声吧。

6c224f4a20a4462331f576adc716cc0b0df3d7f8.jpeg?token=0aca004de032502e39088d16ddabb638&s=9262FA0146126DC69A1806D60300D097

这其中的原因有很多种,但让人糟心的代码的原因排第一位的肯定是追溯其的逻辑特别的困难,那排第二绝对是出了问题定位原因特别困难。

之所以会定位问题原因难,最根本的是代码编写者缺少的是“异常”处理思维。

【1】语法格式

我们开始从Python的异常语法格式开始吧。

279759ee3d6d55fbcb1edce93216f14f22a4dddb.jpeg?token=2498bed4587c5e03539e6a4fbb41778b&s=C060BA4653A7B3490EC41C010000E0C0

从上图可以看到以下信息:

四个关键词:try、except、else、finally;支撑多异常监控。其中,

try块包含着可能引发异常的代码;except块则用来捕捉和处理发生的异常;如果 try块中没有抛出异常,则执行 else块;finally块无论是否发生异常都会被执行;通常用来释放 try块中申请的资源。我们一直知道程序代码中,有的关键词是必须要的,有的是非必须的。根据上面语法格式,我没可以问自己:是否可以有多重组合形式呢?

【2】try…… 一个 except 结构

还是以一个测试0 不能做除数的异常捕捉案例。具体代码及执行效果如下图:

cdbf6c81800a19d8ed9c8fe86cce3c8ea71e467d.jpeg?token=7ebe503d43f0adeb1375fb8eaa2c82ca&s=EC92E51A111E75CC5C7541DE000010B0

代码逻辑及执行结果:

接收键盘输入的数字作为除数与被除数;try模块中用两个print语句来验证是否执行除法运算;由于z = x / y引发来异常,所以其后的print语句未被执行;except模块调用Python中的系统异常BaseException,打印出异常信息。【3】try…… 多个 except 结构

针对上述案例,我们可以进一步捕捉更多详细的异常。如下图:

18d8bc3eb13533fa0190a892c8e7431a41345b25.jpeg?token=d67c30b0c2139c9e48fe2ba9c8338ed2&s=CC12ED1A1B3ED4CC147DF1DE0000C0B1

【4】try……except……else 结

再进一步的话,针对try正常执行后,通过else来控制一些语句块的执行。见下图:

4a36acaf2edda3cc2c72876d61dd8704203f92a6.jpeg?token=ea617412bcce04416eee5638f4af92c3&s=4CD2C91A091E55CE4E54B0DE000050B1

【5】try……except……finally 结构

最后,总是会碰到不管tyr还是Except的执行结果如何都要执行的语句块,这是后finally就派上用场了。见下图:

42166d224f4a20a4a2433146f0662627730ed088.jpeg?token=94db533727601c837f0b1c584578eb53&s=CC92E412191ED5CC5A74A4DC000080B1

总结

Python异常处理语法中出现四个关键词(try、except、else、finally);可以拆分出四种结构。

f31fbe096b63f624c4cb7690e77055fd1b4ca34d.jpeg?token=6a22f03a31b4f8503d6cf5f59213aecf&s=A832C61666DA666816B27049030060B9

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值