码迷,mamicode.com
首页 > 编程语言 > 详细

python try except else finally

时间:2017-10-10 13:16:40      阅读:161      评论:0      收藏:0      [点我收藏+]

标签:col   exception   class   div   lock   error:   python   语法   log   

python  try except else finally 实例

class AError(Exception):
    """AError---exception"""
    print(AError)

class BError(Exception):
    """BError---exception"""
    print(BError)

try:
    # raise AError
    # raise BError
    aaaaa()
except AError:
    print("Get AError")
except BError:
    print("Get BError")
except:
    print("Get Exception")
else:
    print("do else")
finally:
    print("finally")

 

1.在上面所示的完整语句中try/except/else/finally所出现的顺序必须是try-->except X-->except-->else-->finally,即所有的except必须在else和finally之前,else(如果有的话)必须在finally之前,而except X必须在except之前。否则会出现语法错误。

2.在上面的完整语句中,else语句的存在必须以except X或者except语句为前提,如果在没有except语句的try block中使用else语句会引发语法错误。也就是说else不能与try/finally配合使用。

3.try成功进else,不成功进对应的except;

4.不论是否成功except X,except的判定语句都会执行,只是不进入;对应到以上程序就是不论哪种情况 AError BError都会打印,但是Get AError Get BError 只有抛对应的异常时才会打印。

5.finally所有情况都会执行,可以不写,写了就必须在所有except else等之后;

 

python try except else finally

标签:col   exception   class   div   lock   error:   python   语法   log   

原文地址:http://www.cnblogs.com/aaron-agu/p/7644847.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!