您的位置:首页 > 编程语言 > Python开发

python异常之抛出异常的用法

2018-02-07 09:28 489 查看

try…except

try:
(1,2)[0]=11
except TypeError as e:
print("ERROR:",e)   # ERROR: 'tuple' object does not support item assignment
else:
print("No ERROR!")  # 如果没有异常发生,就执行。

result:
ERROR: 'tuple' object does not support item assignment


try:
(1,2)[0]=0
except:
print("GOD, A ERROR!")
else:
print("No ERROR!")  # 如果没有异常发生,就执行。

result:
GOD, A ERROR!


try:
(1,2)[0]=0
except(TypeError,IndexError):   # 发生多个异常中的一个,才执行这块代码,出现的错误类型不在括号内,无法捕获!
print("GOD, A TypeError or IndexError!")
else:
print("No ERROR!")  # 如果没有异常发生,就执行。

result:
GOD, A ERROR!


raise

try:
raise TypeError("A TypeError!")     # 主动触发异常
except(TypeError):   # 发生多个异常中的一个,才执行这块代码,出现的错误类型不在括号内,无法捕获!
print("GOD, A TypeError!")
finally:
print("Must Execute!")

result:
GOD, A TypeError!
Must Execute!


自定义一个异常类

class BiBiException(Exception):
def __init__(self,message):
Exception.__init__(self)
self.message=message

try:
raise BiBiException("A BiBiException!")     # 主动触发异常
except:
print("GOD, A BiBiException!")

result:
GOD, A BiBiException!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: