python笔记--异常处理

Python异常处理

常见异常

AttributeError:属性错误,特性引用和赋值失败时会引发属性错误

NameError:试图访问的变量名不存在

SyntaxError:语法错误,代码形式错误

Exception:所有异常的基类,因为所有python异常类都是基类Exception的其中一员,异常都是从基类Exception继承的,并且都在exceptions模块中定义。

IOError:一般常见于打开不存在文件时会引发IOError错误,也可以解理为输出输入错误

KeyError:使用了映射中不存在的关键字(键)时引发的关键字错误

IndexError:索引错误,使用的索引不存在,常索引超出序列范围,什么是索引

TypeError:类型错误,内建操作或是函数应于在了错误类型的对象时会引发类型错误

ZeroDivisonError:除数为0,在用除法操作时,第二个参数为0时引发了该错误

ValueError:值错误,传给对象的参数类型不正确,像是给int()函数传入了字符串数据类型的参数。

异常处理结构

try:
# 主代码块
pass
except KeyError as e:
# key异常时,执行该模块
pass
except Exception as e:
#捕获其他未知错误
pass
else:
# 主代码块执行完,执行该块
pass
finally:
# 无论异常与否,最终执行该块
pass

异常处理实例

dic = {'k1':'v1'}
try:
dic['k20']
except KeyError as e:
print(e)

万能异常:Exception可以捕获任意异常

s1 = 'hello'
try:
int(s1)
except Exception as e:
print(e)

自定义异常

class yukyException(Exception):
def __init__(self,message):
self.message = message
def __str__(self):
return self.message try:
raise yukyException("my exception") #主动触发异常
except yukyException as e:
print(e)
上一篇:MVC 5 + EF6 入门完整教程14 -- 动态生成面包屑导航


下一篇:修改dedecms面包屑导航的首页链接关键字