参考链接: Python中的用户定义异常
导入模块错误
输入:
import a
运行后结果为:importerror 指的是错误类型,引入错误 ,错误说明:提示没有命名的模块
索引错误 输入:
list1=[1,2,3,4]
print list1[5]
运行结果: IndexError: list index out of range :索引错误:超出范围的列表索引
字典键值错误
输入:
dict1={'name':'beij','age':20,'gender':'男'}
print dict1['name1']
运行结果:KeyError 键值错误,字典中不存在的键
注意:有错误发生时,程序直接断掉了,后面代码都不执行了,都无效了
命名错误 NameError
print a
运行后,提示名称未被定义
IndentationError:缩进错误
输入:
if 1==1:
print 'aaa'
提示缩进错误,
语法错误:SyntaxError
list2 = [1,2,3,4
执行后:提示 invalid syntax 无效语法
TypeError:不同类型间的无效操作
print 1 '1'
运行后:提示 TypeError:不支持的操作数类型(s)为 :“int”和“STR”
ZeroDivisionError:除数为0
print 5/0
运行后:
无法预知的调用错误
输入:
def sum(a, b):
print a b
print sum(0, 1) 2
执行完成后: def没有返回值,是个none,none和2是无法相加的
语言里面的错误,展示给用户的就是这样的,我们要学会看异常,根据异常来处理问题
都是要固定的错误格式的
调试时我们关心
什么类型的错误? 分类
在哪儿出错的? 记录并显示堆栈信息
为什么出错? 显示原因