python常见错误(exception)
在Python中,有许多常见的错误类型,其中一些包括:
-
SyntaxError:语法错误,通常是由于代码中的拼写错误、缺少括号或其他语法问题引起的。这些错误会在代码解析时立即触发。
-
IndentationError:缩进错误,通常是由于不一致的缩进引起的。在Python中,缩进非常重要,因为它表示代码块的范围。
-
NameError:名称错误,通常是由于引用了未定义的变量或函数引起的。这可能是由于拼写错误或作用域问题导致的。
-
TypeError:类型错误,通常是由于将不兼容的数据类型进行操作引起的。例如,尝试将整数与字符串相加会导致类型错误。
-
ValueError:值错误,通常是由于传递给函数的参数值不合法引起的。例如,尝试将无效的字符串转换为整数会引发值错误。
-
IndexError:索引错误,通常是由于尝试访问列表、元组或其他序列类型中不存在的索引引起的。例如,访问超出列表范围的索引会引发索引错误。
-
KeyError:键错误,通常是由于尝试在字典中查找不存在的键引起的。如果键不存在于字典中,将引发键错误。
-
FileNotFoundError:文件未找到错误,通常是由于尝试打开或操作不存在的文件引起的。这可能是由于文件路径错误或文件不存在的原因引起的。
-
ZeroDivisionError:除以零错误,通常是由于尝试在除法操作中将分母设置为零引起的。
-
AttributeError:属性错误,通常是由于尝试访问对象上不存在的属性或方法引起的。
-
ImportError:导入错误,通常是由于尝试导入不存在的模块或名称引起的。
-
RuntimeError:运行时错误,通常是由于逻辑错误或其他未知原因引起的。这通常需要更深入的调试。
这些是Python中一些常见的错误类型,但并不限于这些。当你在编写代码时,要小心捕获和处理这些错误,以提高程序的稳定性和可靠性。使用 try
和 except
块来捕获和处理异常是一种有效的方式。
当我们尝试读入无限多组数据的时候,这个时候是EOFError错误:
while(True):try:m,n = map(int,input().split())代码块except EOFError:break
当然也可以直接使用:
while(True):try:m,n = map(int,input().split())代码块except: # 不指明任何错误,就是会捕获任何错误break
但是不推荐使用全部捕获,因为会导致捕获其他错误,如当出现下标越界错误,也会被捕获,中止代码,但却不会报错,找错误是件很痛苦的事情,特别当代码多的时候。