python中常见的那些错误及解决方法(不定更新)

错误1:SyntaxError: 'return' outside function
解决:将return放在方法体中
return不能在方法以外使用

错误2:TypeError: must be str, not int
类型错误 必须是一个字符串 不能是数字
解决办法:使用+拼接的时候 必须使用字符串,或者将数字转化成字符串

错误3:SyntaxError: invalid syntax
语法错误 非法的语法
解决办法:看报错信息在第几行 ,从这一行往上找错误

错误4:IndentationError: unindent does not match any outer indentation level
indent 缩进错误 : 未知缩进不匹配任何缩进等级
解决办法:tab自动缩进

错误5:IndexError: string index out of range
索引错误:字符串超出了范围
解决办法:查看字符串的长度 索引要小于长度

错误6:ValueError: substring not found
值错误:子字符串未找到

错误7:IndexError: list index out of range
索引错误:列表索引超出范围

错误8:AttributeError: 'tuple' object has no attribute 'remove'
属性错误:元组对象没有属性'remove'

错误9: IndentationError: expected an indented block
原因:语法格式问题 需要缩进


错误10:function() takes at least 1 argument (0 given)
原因 调用方法的时候缺少一个参数


错误11:SyntaxError: EOL while scanning string literal
原因:非法结束符号

错误12:TypeError: say_gun() takes no arguments (1 given)
原因: python 中的类方法和普通的函数有一个明显的区别 就是 在类方法中必须有一个额外的一个参数self。 可以不用为这个参数赋值 ,这个参数指代的是对象本身 。 

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

关于错误、异常产生时的,出现的提示总结:

AttributeError:当一个属性引用或赋值失败时,会产生

 

EOFError:对于类似input或者raw_input这样的内置函数,如果在遇到输入流末尾之前没有读到任何数据,会产生

 

FloatingPointError:这个错误由导致错误的浮点操作产生,前提是已经打开了浮点异常控制(fpectl),启用fpectl时,要求编译解释器提供 with-fpectl标志,但是标准文档中不提倡使用fpectl

 

IOError:输入或输出失败时会产生,如磁盘满了,输入文件不存在等等

 

ImportError:无法导入一个模块或者模块中的一个成员时会产生该异常

 

IndexError:如果一个序列引用越界,就会产生IndexError

 

KeyError:如果没有找到一个值作为字典的键,会产生异常

 

KeyBoardInterrupt:用户按下Ctrl-C(或者Delete)终止一个正在运行的程序时,会产生

 

MemoryError:如果一个程序用尽了所有内存,而且可以恢复,会产生

 

NameError:如果代码引用了一个名字,而当前作用域中不存在这个名字,会产生

 

NotImplementedError:用户自定义的基类可能产生NotImplementedError,来指示一个方法或者行为需要子类定义

 

OSError:一个操作系统级别函数返回错误时会产生OSError

 

OverflowError:当一个算术运算超出变量类型的界限时,会产生

 

RefernceError:使用一个weakref代理访问已经被垃圾回收的对象时,会产生

 

RuntimeError:如果没有其他更特定的异常可用,就要使用RuntimeError异常

 

SyntaxError:当解释器无法解释程序的时候,会产生

 

SystemError:如果错误发生在解释其本身,会产生

 

SystemExit:当调用sys.exit()会产生

 

TypeError:结合对象或者在对象上调用函数时,如果对象类型不正确会产生

 

UnboundLocalError:一种NameError,特别针对局部变量名

 

UnicodeError:ValueError的一个子类,出现Unicode问题时产生

 

ValueError:如果一个函数接收到的值类型正确,但是值不合法

 

ZeroDivisionError:0做分母时抛出

猜你喜欢

转载自www.cnblogs.com/wswyy/p/11749722.html
今日推荐