techfix

前言

我们知道,在Python中,我们是用try- -excetp- - 来做异常处理的,但Python 有别于其他语法的是在异常处理中还提供了else的处理场景,是的,你没看错,就是在条件判断if- -else- - 中的else,那我们接下来就来看看在异常处理中else有什么作用。

else 作用场景

1.else 是在没有捕捉到异常情况下触发。
如果希望在程序一切正常,没有触发任何异常的情况下做些处理,可以用else,示例如下:

>>> def div():
...     try:
...             x = int(input('firsut num:'))
...             y = int(input('second num:'))
...             print(x/y)
...     except:
...             print('error')
...     else:
...             print('it is ok')
...
>>> div()
firsut num:2
second num:1
2.0
it is ok

1.finally try联合使用 ,不管异常有没有触发,都会执行finally 语句块的内容。

>>> def div():
...     try:
...             x = int(input('firsut num:'))
...             y = int(input('second num:'))
...             print(x/y)
...     except:
...             print('error')
...     else:
...             print('it is ok')
...     finally:
...             print('it is finally')
...
>>> div()
firsut num:2
second num:1
2.0
it is ok
it is finally

# 出现异常的情况
>>> div()
firsut num:1
second num:0
error
it is finally

从上面的例子可以看出,当没有捕获到异常时,else会执行,当捕获到异常时,else就不会执行,finally不管异常有没有触发,都会执行。

分类:

技术点:

相关文章:

  • 2020-06-24
  • 2021-10-19
  • 2018-04-12
  • 2018-05-26
  • 2019-10-28
猜你喜欢
  • 2021-07-30
  • 2021-12-13
  • 2021-04-05
  • 2019-09-28
  • 2021-12-13
  • 2021-11-25
相关资源
相似解决方案