Python基础中所出现的异常报错总结

yipeiwu_com6年前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位置的值这时候就超过它的标准不在范围内

 打个比方坐公交车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,没有和你完全一样的存在。

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

相关文章

Python socket套接字实现C/S模式远程命令执行功能案例

本文实例讲述了Python socket套接字实现C/S模式远程命令执行功能。分享给大家供大家参考,具体如下: 一. 前言 要求: 使用python的socket套接字编写服务器/客户...

python中使用smtplib和email模块发送邮件实例

SMTP模块这么多已定义的类中,我们最常用的的还是smtplib.SMTP类,就具体看看该类的用法:smtp实例封装一个smtp连接,它支持所有的SMTP和ESMTP操作指令,如果hos...

python 计算两个日期相差多少个月实例代码

python 计算两个日期相差多少个月实例代码

近期,由于业务需要计算两个日期之前相差多少个月。我在网上找了很久,结果发现万能的python,居然没有一个模块计算两个日期的月数,像Java、C#之类的高级语言,都会有(date1-da...

Django model反向关联名称的方法

如果你在 ForeignKey或 ManyToManyField字段上使用 related_name属性,你必须总是为该字段指定一个唯一的反向名称。但在抽象基类上这样做就会引发一个很严重...

python FTP批量下载/删除/上传实例

python FTP批量下载/删除/上传实例

最近几天,学习python3的对FTP操作,做下总结!!!! 1.FTP链接 这样写的好处就是如果报错,很快就能找到错在哪里,方便找到问题。 2.FTP文件批量下载 有点要注意的:...