python中异常报错处理⽅法汇总
⾸先异常是什么,异常⽩话解释就是不正常,程序⾥⾯⼀般是指程序员输⼊的格式不规范,或者需求的参数类型不对应,不全等等。
Python中异常是指程序中的例外,违例情况。异常机制是指程序出现错误后,程序的处理⽅法。当出现错误后,程序的执⾏流程发⽣改变,程序的控制权转移到异常处理。
打个⽐⽅很多公司年终送苹果笔记本,你程序话思维以为是(MAC)电脑笔记本,结果给你个苹果+笔记本。。。⾸先类型不对,数量也不对。
先来看⼏个常见的报错如下:
NameError 命名错误原因是: name 'a' is not defined  命名a还未定义简单来说就是程序不知道a带表谁如果a=1 那程序就懂了 a代表1
所以以后碰到这类代码只⽤到错误未定义的a给它赋相应的值即可解决了。
好了我们继续看下⼀个如下:
IndexError 索引错误(也有叫边界错误) 原因: list index out of range 列表的索引已经超出其范围导致
列表a只有2个参数,下标是0,1(不懂去看列表基础),⽽我要打印下标2位置的值这时候就超过它的标准不在范围内
syntaxerror是什么错误
打个⽐⽅坐公交车1⽶2以下⼉童免费,结果来个1⽶5上来就不能免费因为你超过规定⾼度
来我们继续continue:
KeyError 键值错误⼀般出现在字典中原因是:字典a中没有height这个键值,name已经打印出来因为a⾥⾯已经存在
字典是由dict = { key : value }⼀⼀对应组成,打个⽐⽅就理解了dict好⽐⼀家公司company由员⼯key类似标识
value等于员⼯的属性(岗位,⼯资,对应个⼈信息等)这报错就等于去⼀个公司某某某,结果⼈家公司说没这个⼈⼀样。
继续继续continue:
ImportError 导⼊错误原因:No module named nothing 没有模块名叫nothing的⽅法
⼀般这错误会发⽣在拼写错误或者⼤⼩写,没有安装模块⽅法,没有正确引⽤位置(模块更新版本可能会改⽅法名或新增⽂件夹)
这时候我推荐你去python2.x或者python3.x⽬录下\Lib\site-packages⽂件⾥⾯看(第三⽅库模块都会在这⼏种存放)
继续继续continue:
IOError 输⼊输出错误原因:No such file or directory : 'test' 没有在⽬录中到叫test⽂件
这个容易理解,⽆中⽣有。程序说:你坑谁啊?
继续继续continue:
AttributeError 成员属性错误原因:⼀切皆对象然⽽字典a对象内没有⼀个内置函数也就是内置⽅法叫sort排序,⼤家都知道字典是⽆序的,list列表才有这⽅法
当你定义⼀个变量不知道能⽤什么内置函数和⽅法时可以这样⽤dir查看以下当前可以⽤那些⽅法。
SyntaxError 语法错误 :⽆效语法  a没有定义所以没办法让它转换为整型这也是常见错误之⼀
来接着看下⼀个:
TypeError 类型错误:不知道的哈希类型 list列表 (后⾯为个⼈理解) 但是元组却可以放进去有点费解,字典的key⼀般是单元素或唯⼀标识,恰好元组不可变的序列也是唯⼀标识,所以元组可以放⼊key中。打⽐⽅就如你是世界上唯⼀的key,没有和你完全⼀样的存在。
以上是经常会遇到的问题报错,⼤家学会了就可以⾃⼰思考解决⽅法了这样也利于⼤家提⾼⾃⼰的⽔平。