码迷,mamicode.com
首页 > 其他好文 > 详细

异常处理

时间:2018-10-28 19:32:59      阅读:213      评论:0      收藏:0      [点我收藏+]

标签:方法   raise   错误   处理   bsp   使用   ISE   erro   def   

异常处理,虽然程序出错了,但是可以做一些预处理,使得程序不崩溃

data = {name:ABCD,
        age:22}
aa = [1,2,3,4]
try:
    data[naaa]
    aa[5]

# except (KeyError,IndexError) as e:
#     print()   #当出现错误后处理方法一样,可以用这种方法
#------分别抓取错误----
# except KeyError as e:
#     print("the key is error",e)
# except IndexError as e:
#     print("the index ",e)
except Exception as e:
    print("出错了",e)    # 能基本抓住所有错误,常用第二种方法

其他方式

data = {name:ABCD,
        age:22}
aa = [1,2,3,4]
try:
    # data[‘naaa‘]
    aa[2]

except KeyError as e:
    print("the key is error",e)
except IndexError as e:
    print("the index ",e)
except Exception as e:
    print("未知错误",e)
else:
    print("else,如果没有错,执行")
finally:
    print("finally不管有没有错,都执行")

# else,如果没有错,执行
# finally不管有没有错,都执行

自己写的异常

class ABCException(Exception):
    def __init__(self,msg):
        self.msg = msg

    def __str__(self):   # __str__ 可以自定义,也可以不写使用基类的
        return self.msg

try:
    raise ABCException("自己写的异常")    #自己写的异常需要自己触发
except ABCException as e:
    print(e)

 

异常处理

标签:方法   raise   错误   处理   bsp   使用   ISE   erro   def   

原文地址:https://www.cnblogs.com/yfjly/p/9866229.html

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