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

 更新时间:2016年11月19日 09:01:37   作者:Cookie-Fei  
本篇文章介绍了Python基础中所出现的异常报错总结,这是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,没有和你完全一样的存在。

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

相关文章

  • 详解Django之admin组件的使用和源码剖析

    详解Django之admin组件的使用和源码剖析

    本篇文章主要介绍了详解Django之admin的使用和源码剖析,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-05
  • Python利用递归实现文件的复制方法

    Python利用递归实现文件的复制方法

    今天小编就为大家分享一篇Python利用递归实现文件的复制方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-10-10
  • pandas数据类型之Series的具体使用

    pandas数据类型之Series的具体使用

    本文主要介绍了pandas数据类型之Series的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • Python面向对象编程之类的继承

    Python面向对象编程之类的继承

    这篇文章主要介绍了Python面向对象编程之类的继承,继承Inheritance是指代码复用的高级抽象,继承是面向对象设计的精髓之一,实现了以类为单位的高级抽象级别代码复用,下面进入文章看该内容的下详情
    2021-11-11
  • Dockerfile构建一个Python Flask 镜像

    Dockerfile构建一个Python Flask 镜像

    这篇文章主要介绍了Dockerfile构建一个Python Flask 镜像,对正在学习的你有一定的参考价值,需要的小伙伴可以参考一下
    2022-01-01
  • Java中的各种单例模式优缺点解析

    Java中的各种单例模式优缺点解析

    这篇文章主要介绍了Java中的各种单例模式解析,单例模式是Java中最简单的设计模式之一,这种类型的设计模式属于创建者模式,它提供了一种访问对象的最佳方式,需要的朋友可以参考下
    2023-07-07
  • 浅谈PyQt5 的帮助文档查找方法,可以查看每个类的方法

    浅谈PyQt5 的帮助文档查找方法,可以查看每个类的方法

    今天小编就为大家分享一篇浅谈PyQt5 的帮助文档查找方法,可以查看每个类的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-06-06
  • tensor.squeeze函数和tensor.unsqueeze函数的使用详解

    tensor.squeeze函数和tensor.unsqueeze函数的使用详解

    本文主要介绍了tensor.squeeze函数和tensor.unsqueeze函数的使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03
  • Python 操作 PostgreSQL 数据库示例【连接、增删改查等】

    Python 操作 PostgreSQL 数据库示例【连接、增删改查等】

    这篇文章主要介绍了Python 操作 PostgreSQL 数据库的方法,结合实例形式分析了Python 连接PostgreSQL及增删改查等相关操作技巧,需要的朋友可以参考下
    2020-04-04
  • 横向对比分析Python解析XML的四种方式

    横向对比分析Python解析XML的四种方式

    这篇文章主要以横向对比方式分析Python解析XML的四种方式,感兴趣的小伙伴们可以参考一下
    2016-03-03

最新评论