异常处理和函数异常抛出
发布时间:2023-06-25 11:51:03
异常处理是程序设计中非常重要的一部分,它用于对程序执行过程中可能出现的异常情况进行处理,避免程序因异常导致崩溃或不可预测的结果。
在 Python 中,我们可以通过 try 和 except 语句来处理异常。try 块包含可能引发异常的代码语句,如果 try 块中的语句执行时发生了异常,就会跳转到对应的 except 块中进行处理。
例如,下面的代码中,我们尝试打开一个不存在的文件,因此会引发 FileNotFoundError 异常,通过 try 和 except 语句可以进行异常处理,输出提示信息并继续执行程序。
try:
f = open("nonexistentfile.txt", "r")
except FileNotFoundError:
print("File not found.")
print("Program continues.")
除了通过 try 和 except 语句处理异常外,我们还可以通过 raise 语句来抛出异常。raise 语句会在程序中手动引发一个异常,可以用于自定义异常类型或者在函数中抛出异常。
在 Python 中,我们可以自定义异常类型,通过继承 Exception 类来实现。例如,下面的代码中,我们定义了一个自定义异常类型 InvalidInputError,继承自 Exception 类。
class InvalidInputError(Exception):
pass
然后,在函数中通过 raise 语句来抛出该异常。
def calculate_square(num):
if num < 0:
raise InvalidInputError("Number must be non-negative.")
return num ** 2
在使用这个函数时,如果传入的参数为负数,则会抛出 InvalidInputError 异常,并输出对应的异常信息。
try:
result = calculate_square(-1)
except InvalidInputError as e:
print(e)
print("Program continues.")
以上就是 Python 中异常处理和函数异常抛出的相关内容。在编写 Python 程序时,充分了解和运用异常处理相关知识,可以提高程序的稳定性和可维护性。
