在刚接触python过程中,编写任意代码都有可能出现报错,如果对报错类型不熟悉可能就比较难找出问题。今天我们来讲解python使用过程中常见的8种报错及解决方案。
一、缩进错误(IndentationError: expected an indented block)
1、在Python中,所有代码都是通过正确的空格排列的。所以,无论是多出来的空格,还是缺少空格,整个代码都不会运行,并且仅返回一个错误函数。Python代码遵循PEP8空白规范,每一级缩进使用 4个空格。
2、语法举例:
a= 1
b= 2
if a
二、语法错误(SyntaxError)
语法错误的原因包含下列三种:
1.1语法举例:
if name == "A"
print( "hello")
1.1.2错误原因:错误原因:忘记在if/elif/else/while/for/def/class等语句末尾添加冒号
2.标识符中有无效字符(invalid character in identifier)
2.1语法举例:
print( 'hello', 'world')
2.1.2错误原因:逗号为中文逗号
3.检查到不完整的字符串(unexpected EOF while parsing),很多情况下是由于字符串两边的引号不统一。
3.1语法举例:
result = ( 1024+( 512* 2)/ 128
3.1.2错误原因:圆括号没有成对出现
三、变量名错误(NameErro)
1.变量名错误是最普通也是最常会遇到的报错类型,经常会出现在Python变量命名上,如果找不到变量就会引发NameError。关于变量名的规则,需要牢记以下几条:
出现变量名错误,可以查看变量是否赋值,是否存在大小写不统一或者变量名写错了的情况,找到后加以修正。
1.1语法举例:
message = "Hello!"
print(mesage)
1.1.2错误原因:变量名拼写错误,误将massage拼写为masge
四、索引错误(IndexError)
1.索引是项目在数组或列表中的位置,当我们尝试从列表中访问元素或从列表中不存在的索引中访问元组时,就会发生这种异常。
例如,有一个包含3个元素的列表,索引在0到2之间,如果试图访问索引3或4的元素,就会产生IndexError。
1.1语法举例:
a = [ 1, 2, 3]
print(a[3])
1.1.2错误原因:列表a中不存在第3个索引,列表的索引从0开始编号
五、类型错误(TypeError)
1.在程序中使用不正确或不受支持的对象类型时,会引发该错误。如果尝试调用不可调用的对象或通过非迭代标识符进行迭代,也会引发此错误。
1.1语法举例:
age = 18
print( "我的年龄是"+age)
1.1.2错误原因:在使用“+”做拼接的时候,必须使用字符串,或者 把数字用str函数转化成字符串
六、属性错误(AttributeError)
1.特性引用和赋值失败时会引发属性错误。类错误的原因是尝试访问未知的对象属性,换句话说就是找不到对应对象的属性。可以检查类中构造函数__init__是否写正确,左右两边各两条下划线。
留言与评论(共有 0 条评论) “” |