绑定完请刷新页面
取消
刷新

分享好友

×
取消 复制
Python基础教程:新手朋友在python中常见的错误信息汇总
2019-11-22 11:36:49

千锋python学院 



Python基础教程:新手朋友在python中常见的错误信息汇总

近很多同学都在问很多错误是怎么回事,其实他们都是Python中非常基础的错误,并且错误也告诉你很清楚,只需要针对错误去解决就好了。那么我今天针对常见的错误进行一个总结,希望对大家有帮助。

一般一个错误分为错误类型:具体原因。其中错误类型基本不变,具体原因会顺序万变,我们拿出常见的给大家作为一个参考,注明:具体原因中引号内的信息是为了方便举例写的,真实你出现的错误并不一定和我引号里的内容一致,恩甚至说应该是肯定不一样的~

1、IndentationError: unindent does not match any outer indentation level

解释:缩进错误,python不是通过{}包裹代码,而是进行tab或者空格的方式对代码进行缩进,如果

缩进前后没有对齐,就会报这个错误

2、NameError:name 'test' is not defined

解释:你没有定义一个叫test的变量,就直接使用test去执行业务逻辑,就会报这个错误

3、SyntaxError: invalid syntax

解释:语法错误。的不是在运行时发生的错误.

它代表 Python 代码中有一个不正确的结构, 在它改正之前程序无法执行

还有比如 新手常见的 SyntaxError: EOL while scanning string literal,表示你的字符串没有用引号封装好

4、IndexError:list index out of range

解释:索引超出序列范围,比如li=['a', 'b', 'c'],索引为0,1,2,当你访问了li[3]就会报错

5、KeyError:'test'

解释:字典里没有test这个key,a = {'name': 'jack'} 当你调用a['age']就会抛这个错误

6、IOError:[Errno 2] no such file or directory:"/home/a.txt"

解释:没有找到/home/a.txt这个路径或文件,当你使用open或其他读取系统路径文件的时候出现

7、AttributeError:'a' object object has no attribute 'b'

解释:一个实例化的 a 对象里 如果没有这个b 而你调用了,比如 a.b 就会报这个错误

8、TypeError: 'NoneType' object is not callable

解释:当前你调用的是一个None,而你企图对这个None对象 进行一些 如 None() 等操作,同时

和 7 类似 如果一个None对象你调用了属性 比如 None.b 也会报7的错误。

该错误通常发生在应该返回一个可用对象并进行操作,而返回了None你没有验证就去操作

再比如有一个函数 def a(name):... 的函数 如果你没有传参数或少传了参数也会报Typeerror

比如 TypeError: a() missing 1 required positional argument: 'name'

再比如TypeError: Can’t convert ‘int’ object to str implicitly

说明你企图让一个整数和字符串相加

9、ValueError: invalid literal for int() with base 10: 'abc'

解释:传给的对象的参数类型不准确造成,比如有一个对象 a = 'abc' 你企图对他 进行 int(a)

就会出现这个错误

10、FileNotFoundError: [Errno 2] No such file or directory: '/home/helloworld.py'

解释:和6类似,当对文件进行读取的时候,也有可能抛出这个错误,标明没有找到路径或文件

11、io.UnsupportedOperation: not writable

解释:当你对一个文件进行操作的时候,如果没有相关的权限,就会报这个错误

12、ImportError: No module named 'requests'

解释:你没有导入这个requests包 但是在业务里使用了这个包

再比如 我企图从requests里导入一个不存在的方法 from requests from aa

就会报 ImportError: cannot import name 'aa'

在这里有一个槽点,比如我们在test.py 路径下执行 python test.py

但是在test.py 中 有调用 当前路径上一层其他路径的包或者函数,也会报相关的importerror,

原则上是你执行当前py位置上的错误,在当前路径下执行,代码里只会以当前路径为启示路径进行寻找。

所以好是在更上层进行执行,或者在当前py下把需要导入的报的地址 加入到sys.path中。

以上就是常见的python的错误,我也会不断的给大家更新Python基础教程。大家也要练习看错误信息,根据错误信息自己去解决问题,才是一个合格的程序员~

分享好友

分享这个小栈给你的朋友们,一起进步吧。

应用开发
创建时间:2020-06-17 15:31:04
应用软件开发是指使用程序语言C#、java、 c++、vb等语言编写,主要是用于商业、生活应用的软件的开发。
展开
订阅须知

• 所有用户可根据关注领域订阅专区或所有专区

• 付费订阅:虚拟交易,一经交易不退款;若特殊情况,可3日内客服咨询

• 专区发布评论属默认订阅所评论专区(除付费小栈外)

技术专家

查看更多
  • 栈栈
    专家
戳我,来吐槽~