【摘要】 异常就是程序运行时发生错误的信号,在python中,错误触发的异常如下
异常和错误
第一:程序中难免出现错误,而错误分成两种
1.语法错误(这种错误,根本过不了python解释器的语法检测,必须在程序执行前就改正)
语法错误:
#语法错误示范一if#语法错误示范二def test:pass#语法错误示范三print(haha
2.逻辑错误(逻辑错误)
逻辑错误:
#用户输入不完整(比如输入为空)或者输入非法(输入不是数字)num=input(">>: ")int(num)#无法完成计算res1=1/0res2=1+'str'
第二:什么是异常
异常就是程序运行时发生错误的信号,在python中,错误触发的异常如下
第三:python中的异常种类
在python中不同的异常可以用不同的类型(python中统一了类与类型,类型即类)去标识,不同的类对象标识不同的异常,一个异常标识一种错误
1、出发IndexError
l=['egon','aa']l[3]
2、触发KeyError
dic={'name':'egon'}dic['age']
3、触发ValueError
s='hello'int(s)
常用异常:
AttributeError 试图访问一个对象没有的树形,比如foo.x,但是foo没有属性xIOError 输入/输出异常;基本上是无法打开文件ImportError 无法引入模块或包;基本上是路径问题或名称错误IndentatireplaceString 语法错误(的子类) ;代码没有正确对齐IndexError 下标索引超出序列边界,比如当x只有三个元素,却试图访问x[5]KeyError 试图访问字典里不存在的键KeyboardInterrupt Ctrl+C被按下NameError 使用一个还未被赋予对象的变量SyntaxError Python代码非法,代码不能编译(个人认为这是语法错误,写错了)TypeError 传入对象类型与要求的不符合UnboundLocalError 试图访问一个还未被设置的局部变量,基本上是由于另有一个同名的全局变量,导致你以为正在访问它ValueError 传入一个调用者不期望的值,即使值的类型是正确的
更多异常:
ArithmeticErrorAssertireplaceStringAttributeErrorBaseExceptionBufferErrorBytesWarningDeprecationWarningEnvironmentErrorEOFErrorExceptionFloatingPointErrorFutureWarningGeneratorExitImportErrorImportWarningIndentatireplaceStringIndexErrorIOErrorKeyboardInterruptKeyErrorLookupErrorMemoryErrorNameErrorNotImplementedErrorOSErrorOverflowErrorPendingDeprecationWarningReferenceErrorRuntimeErrorRuntimeWarningStandardErrorStopIterationSyntaxErrorSyntaxWarningSystemErrorSystemExitTabErrorTypeErrorUnboundLocalErrorUnicodeDecodeErrorUnicodeEncodeErrorUnicodeErrorUnicodeTranslateErrorUnicodeWarningUserWarningValueErrorWarningZeroDivisireplaceString
作者:Yuchuan