异常
python异常类层级
不小心会翻车的异常种类
1.语法错误
path = 'a.txt SyntaxError: EOL while scanning string literal
2.缩进错误
python中缩进规则严格:规定默认4个空格表示一个缩进
缩进错误
list1 = [1,2,3,4,5]
for i in list1:
print(i)
print('============')
print('*'*10)
3.单词拼写错误
#prin('============') NameError: name 'prin' is not defined
异常通常由一下问题引起的
1.在定义函数之前就引用该函数
2.调用不属于某个对象的方法或者属性
3.试图将某个值转换为不恰当的类型
四种典型的异常:
1.类型错误(TypeError):某些函数或者方法只适用于特定的数据类型,如果 对数据类型的操作不当,就会产生类型错误
2.数值错误(ValueError):在输入类型正确的情况下,具体输入值错误
3.索引错误(IndexError):超出序列长度的索引操作
4.属性错误(AttributeError):方法或者属性不适用该对象
处理异常办法
程序要遇到异常的时候,往往是直接中断,跳出执行。但是有些时候,我们需 要在遇到异常的时候另外处理,而不是直接停止。
#异常处理办法:
#try...except...except
#print(10/0) ZeroDivisionError: division by zero 0不能作为除数
try:
#print(10/0)
print(10/2)
except ZeroDivisionError:
print('出现错误了!')
else:
print('这是else中的语句')#当try中的代码不会出错时,会执行else语句
finally:
print('这是finally中的语句!') #finally中的语句不管是否出错,都会执行else