今天就跟大家聊聊有关python中怎么处理多个异常,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
一、处理多个异常
1.把所有的异常进行明细化,确定异常条件,直接处理已知的异常,分别进行处理。
这种情况下就是多次使用except这个关键词来处理异常。
2.统一处理所有异常,把多个已知的异常归类到一起处理。
我们把多个明确的异常归类到一起,用同一种方式来进行处理。我们把多个异常写到同一个except中用小括号括起来,中间的异常用逗号隔开。
except(MyCustomerException1,MyCustomerException2):
print("这里处理异常1和异常2的结果")
3.处理其它未知的异常。
处理未知异常的技巧就是在except后面不要加某一种异常情况,此时默认会处理所有的未知异常。
二、案例:做多个异常处理的案例
1.自定义多个异常
2.根据实际情况,来调用自定义的几个异常
3.处理异常
三、捕获异常取别名
在try…except语句中的except语句后面实际的异常,如果类名太长,我们可以取别名。格式 except 类常类名 as 别名
except MyCustomerException1 as mce1:
四、总结强调
1.掌握所有异常情况的情况方法try。。。Except
2.掌握自定义异常的处理方法
3.掌握异常的明细化处理
4.掌握自定义异常的构造函数的信息传入和输出
5.掌握使用同一个except处理多个异常
本节知识源代码;
#第一个自定义异常
class MyCustomerException1(Exception):
def __init__(self,code=100,desc="异常消息:100"):
self.code=code
self.desc=desc
#自定义第二个异常
class MyCustomerException2(Exception):
pass
a=input("请输出一个值:")
# try:
# if a=="qqq":
# raise MyCustomerException1
# elif a=="123":
# raise MyCustomerException2("这里异常为2")
# else:
# b=a/0
# except MyCustomerException1 as mce1:
# print("这里触发了第一个异常",mce1.code,mce1.desc)
# except MyCustomerException2:
# print("这里触发了第二个异常")
# except:
# print("这里处理未知异常")
try:
if a=="qqq":
raise MyCustomerException1
elif a=="123":
raise MyCustomerException2("这里异常为2")
else:
b=a/0
except(MyCustomerException1,MyCustomerException2):
print("这里处理异常1和异常2的结果")
except:
print("未知异常")
看完上述内容,你们对python中怎么处理多个异常有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。