python中异常报错处理方法汇总


Posted in Python onNovember 20, 2016

首先异常是什么,异常白话解释就是不正常,程序里面一般是指程序员输入的格式不规范,或者需求的参数类型不对应,不全等等。

Python中异常是指程序中的例外,违例情况。异常机制是指程序出现错误后,程序的处理方法。当出现错误后,程序的执行流程发生改变,程序的控制权转移到异常处理。

打个比方很多公司年终送苹果笔记本,你程序话思维以为是(MAC)电脑笔记本,结果给你个苹果+笔记本。。。首先类型不对,数量也不对。

先来看几个常见的报错如下:

python中异常报错处理方法汇总

NameError 命名错误 原因是: name 'a' is not defined  命名a还未定义 简单来说就是程序不知道a带表谁 如果a=1 那程序就懂了 a代表1

所以以后碰到这类代码只用找到错误未定义的a给它赋相应的值即可解决了。

好了我们继续看下一个如下:

python中异常报错处理方法汇总

IndexError 索引错误(也有叫边界错误) 原因: list index out of range 列表的索引已经超出其范围导致

列表a只有2个参数,下标是0,1(不懂去看列表基础),而我要打印下标2位置的值这时候就超过它的标准不在范围内

打个比方坐公交车1米2以下儿童免费,结果来个1米5上来就不能免费因为你超过规定高度

来我们继续continue:

python中异常报错处理方法汇总

KeyError 键值错误 一般出现在字典中原因是:字典a中没有height这个键值,name已经打印出来因为a里面已经存在

字典是由dict = { key : value }一一对应组成,打个比方就理解了dict好比一家公司company由员工key类似标识

value等于员工的属性(岗位,工资,对应个人信息等)这报错就等于去一个公司找某某某,结果人家公司说没这个人一样。

继续继续continue:

python中异常报错处理方法汇总

ImportError 导入错误 原因:No module named nothing 没有模块名叫nothing的方法

一般这错误会发生在拼写错误或者大小写,没有安装模块方法,没有正确引用位置(模块更新版本可能会改方法名或新增文件夹)

这时候我推荐你去python2.x或者python3.x目录下\Lib\site-packages文件里面找找看(第三方库模块都会在这几种存放)

继续继续continue:

python中异常报错处理方法汇总

IOError 输入输出错误 原因:No such file or directory : 'test' 没有在目录中找到叫test文件

这个容易理解,无中生有。程序说:你坑谁啊?

 继续继续continue:

python中异常报错处理方法汇总

AttributeError 成员属性错误 原因:一切皆对象 然而字典a对象内没有一个内置函数也就是内置方法叫sort排序,大家都知道字典是无序的,list列表才有这方法

当你定义一个变量不知道能用什么内置函数和方法时可以这样用dir查看以下当前可以用那些方法。

 

 python中异常报错处理方法汇总

SyntaxError 语法错误 :无效语法  a没有定义所以没办法让它转换为整型 这也是常见错误之一

来接着看下一个:

python中异常报错处理方法汇总

TypeError 类型错误:不知道的哈希类型 list列表 (后面为个人理解) 但是元组却可以放进去有点费解,字典的key一般是单元素或唯一标识,

恰好元组不可变的序列也是唯一标识,所以元组可以放入key中。打比方就如你是世界上唯一的key,没有和你完全一样的存在。

以上是经常会遇到的问题报错,大家学会了就可以自己思考解决方法了这样也利于大家提高自己的水平。

Python 相关文章推荐
Linux 发邮件磁盘空间监控(python)
Apr 23 Python
浅谈Python的异常处理
Jun 19 Python
python通过cookie模拟已登录状态的初步研究
Nov 09 Python
Python中shape计算矩阵的方法示例
Apr 21 Python
python版本坑:md5例子(python2与python3中md5区别)
Jun 20 Python
python下setuptools的安装详解及No module named setuptools的解决方法
Jul 06 Python
使用pygame模块编写贪吃蛇的实例讲解
Feb 05 Python
python学习——内置函数、数据结构、标准库的技巧(推荐)
Apr 18 Python
python定位xpath 节点位置的方法
Aug 27 Python
使用python 将图片复制到系统剪贴中
Dec 13 Python
Python爬虫:从m3u8文件里提取小视频的正确操作
May 14 Python
教你怎么用python selenium实现自动化测试
May 27 Python
详解MySQL数据类型int(M)中M的含义
Nov 20 #Python
python制作websocket服务器实例分享
Nov 20 #Python
Flask框架的学习指南之用户登录管理
Nov 20 #Python
Flask框架的学习指南之制作简单blog系统
Nov 20 #Python
Flask框架的学习指南之开发环境搭建
Nov 20 #Python
Python 描述符(Descriptor)入门
Nov 20 #Python
独特的python循环语句
Nov 20 #Python
You might like
让这部DC动画新作刷新你的认知
2020/03/03 欧美动漫
聊天室php&mysql(五)
2006/10/09 PHP
php写的简易聊天室代码
2011/06/04 PHP
PHP mkdir()无写权限的问题解决方法
2014/06/19 PHP
2014年10个最佳的PHP图像操作库
2014/07/14 PHP
Laravel框架源码解析之模型Model原理与用法解析
2020/05/14 PHP
用js得到网页中所有的div的id
2020/10/19 Javascript
在修改准备发的批量美化select+可修改select时,在非IE下发现了几个问题
2007/01/09 Javascript
idTabs基于JQuery的根据URL参数选择Tab插件
2012/04/11 Javascript
JS常用正则表达式总结
2013/11/12 Javascript
Javascript 实现图片无缝滚动
2014/12/19 Javascript
使用Raygun对Node.js应用进行错误处理的方法
2015/06/23 Javascript
jQuery滚动新闻实现代码
2016/06/26 Javascript
javascript实现去除HTML标签的方法
2016/12/26 Javascript
vue对storejs获取的数据进行处理时遇到的几种问题小结
2018/03/20 Javascript
Express结合Webpack的全栈自动刷新
2019/05/23 Javascript
在Vue中使用this.$store或者是$route一直报错的解决
2019/11/08 Javascript
JavaScript函数重载操作实例浅析
2020/05/02 Javascript
JS前后端实现身份证号验证代码解析
2020/07/23 Javascript
详解webpack的clean-webpack-plugin插件报错
2020/10/16 Javascript
由Python运算π的值深入Python中科学计算的实现
2015/04/17 Python
使用Python3编写抓取网页和只抓网页图片的脚本
2015/08/20 Python
python 调用HBase的简单实例
2016/12/18 Python
python正则实现提取电话功能
2018/02/24 Python
python对html过滤处理的方法
2018/10/21 Python
10招!看骨灰级Pythoner玩转Python的方法
2019/04/15 Python
一文了解Python并发编程的工程实现方法
2019/05/31 Python
Python对Excel按列值筛选并拆分表格到多个文件的代码
2019/11/05 Python
python爬虫scrapy基本使用超详细教程
2021/02/20 Python
实例教程 纯CSS3打造非常炫的加载动画效果
2014/11/05 HTML / CSS
中职生自荐信
2013/10/13 职场文书
电子信息专业学生自荐信
2013/11/09 职场文书
三方股份合作协议书
2014/10/13 职场文书
简历中自我评价范文
2015/03/11 职场文书
导游词之崇武古城
2019/10/07 职场文书
Nginx服务器添加Systemd自定义服务过程解析
2021/03/31 Servers