异常中的else

Posted 爱你无目的

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了异常中的else相关的知识,希望对你有一定的参考价值。

#如果程序执行完异常还需要做其他事情,该怎么做呢?
#异常为我们提供了try..except...else语句实现该功能,语法如下:
1 try2 <语句>   #运行别的代码
3 except<名字>4 <语句>   #如果在try部分引发了异常1
5 except<名字>,<数据>6 <语句>  #如果引发了异常2,获得附加数据
7 else:
8 <语句>  #如果没有发生异常
#如果在try子句执行时没有发生异常,就会执行else语句后的语句(如果有else)。使用else子句比把所有语句都放在try子句里面更好,这样可以避免一些意想不到而except又没有捕捉的异常。
#例如:
 1 #!/usr/bin/python3
 2 #-*-coding:UTF-8-*-
 3 #异常9.8
 4 
 5 def model_exception(x,y):
 6     try:
 7         a=x/y
 8     except:
 9         print(Error happend)
10     else:
11         print(It went as excepted)
12 
13 model_exception(2,1)
14         #程序执行结果如下:
15 D:\Python\workspace\datatime\20171219>python 异常9.8.py
16 It went as excepted
#由执行结果看到,没有发生异常,会执行else子句的流程。
#综上所述,当程序没有发生异常时,通过添加一个else子句做一些事情(比如输出一些信心)很有用,可以帮助我们更好地判断程序的执行情况。

 

以上是关于异常中的else的主要内容,如果未能解决你的问题,请参考以下文章

异常中的else

Ruby - 即使抛出了 Stripe 异常,else 块中的代码也会执行

片段中的getView()导致抛出异常,不确定原因

片段中的 EditText 上的空指针异常 [重复]

Python入门教程第54篇 异常处理之try…except…else

片段中的空指针异常