Python 中,try/except 语句可用于捕获和处理异常。语法如下:
try:
# 尝试执行的代码块
except ExceptionType1:
# 处理 ExceptionType1 类型的异常
except ExceptionType2:
# 处理 ExceptionType2 类型的异常
else:
# 如果 try 代码块中没有引发异常,则执行该代码块
finally:
# 无论 try 代码块中是否引发异常,都执行该代码块
其中的关键词涵义如下:
- try 代码块中包含要尝试执行的代码,可能引发一个或多个异常。
- except 代码块用于捕获和处理特定类型的异常。可以指定一个或多个异常类型,用逗号分隔。
- else 代码块中包含的代码在 try 代码块中没有引发任何异常时执行。
- finally 代码块中包含的代码在 try 代码块执行完成后总是执行,无论是否引发异常。
以下是一个具体的示例:
try:
x = int(input("请输入一个整数:"))
y = 10 / x
except ValueError:
print("输入错误,必须输入一个整数")
except ZeroDivisionError:
print("除数不能为零")
else:
print("计算结果为:", y)
finally:
print("程序执行完毕")
在这个示例中,程序尝试读取用户输入的整数,并计算 10/x 的值。如果用户输入的不是整数,程序会引发 ValueError 异常,如果 x 的值为零,则程序会引发 ZeroDivisionError 异常。
如果在 try 代码块中没有引发任何异常,则 else 代码块中的代码将被执行。无论 try 代码块是否引发异常,finally 代码块中的代码总是会被执行。
在这个例子中,我们知道 try 语句中的内容有可能会触发 ValueError 和 ZeroDivisionError 这两种异常。但多数情况下,我们不知道有可能会触发哪种异常,这时候可以使用 Exception 捕获所有类型的异常,例如:
try:
# 可能会触发异常的代码
except Exception as e:
# 处理异常的代码
这样可以捕获所有类型的异常,包括系统内置的异常和自定义的异常。
总的来说,使用 try/except 语句可以使程序更加健壮,避免程序崩溃或出现未知错误,增强程序的稳定性和可靠性。
本文链接:https://my.lmcjl.com/post/17587.html
展开阅读全文
4 评论