Python异常与错误处理详细讲解
异常和错误
在 Python 中,错误通常指的是语法错误(SyntaxError)或者代码执行过程中无法完成指定操作的错误;而异常(Exception)是可以被捕获并处理的错误,比如除零异常(ZeroDivisionError)。
异常处理语句
Python 中,我们通常使用 try…except
块来进行异常处理,即尝试执行一段代码,如果出现异常则执行处理代码。常用语句如下:
try:
# 操作代码
except ExceptionType:
# 异常处理代码
其中 ExceptionType
是需要捕获的异常类型,如果不指定则默认捕获所有异常。
异常处理示例
下面是一个简单的除零异常处理的示例:
try:
result = 1/0
except ZeroDivisionError as e:
print("Error:", e)
输出结果为:
Error: division by zero
常见异常类型
Python 中有很多内置的异常类型。常见的异常类型包括:
Exception
:所有异常的基类。AttributeError
:对象没有这个属性。TypeError
:操作或函数参数类型不正确。KeyError
:字典中没有指定的键。IndexError
:序列中没有指定的索引。ValueError
:传递给函数的参数类型正确,但是值不合法。
多个 except 块
可以使用多个 except
块来捕获多个异常类型:
try:
result = int("Not a number")
except ZeroDivisionError as e:
print("Error:", e)
except ValueError as e:
print("Invalid input:", e)
输出结果为:
Invalid input: invalid literal for int() with base 10: 'Not a number'
finally 块
可以使用 finally
块来确保无论是否出现异常,代码都会执行:
try:
print("Perform action")
except Exception as e:
print("Error:", e)
finally:
print("Finally block")
输出结果为:
Perform action
Finally block
总结
Python 的异常处理语句让程序员可以在代码执行过程中尝试执行一段代码,并处理可能出现的异常。常用的处理语句是 try…except
块。在处理异常时,我们可以捕获指定的异常类型,同时也可以使用 finally
块确保代码一定执行。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python异常与错误处理详细讲解 - Python技术站