Python 异常处理:try、except、else 和 finally 的使用指南
导读:异常处理当发生错误(或我们称之为异常)时,Python 通常会停止执行并生成错误消息。try 块用于测试一段代码是否存在错误。except 块用于处理错误。else 块用于在没有错误时执行代码。finally 块用于无论 try 和 exc...
异常处理
当发生错误(或我们称之为异常)时,Python 通常会停止执行并生成错误消息。
try 块用于测试一段代码是否存在错误。
except 块用于处理错误。
else 块用于在没有错误时执行代码。
finally 块用于无论 try 和 except 块的结果如何都要执行的代码。
可以使用 try 语句来处理这些异常:
try:
print(x)
except:
print("发生了一个异常")
由于 try 块引发了一个错误,因此将执行 except 块。
如果没有 try 块,程序将崩溃并引发错误:
print(x)
多个异常
您可以定义尽可能多的异常块,例如,如果要为特定类型的错误执行特殊的代码块:
try:
print(x)
except NameError:
print("变量 x 未定义")
except:
print("其他错误")
else
您可以使用 else 关键字来定义一段代码,该代码块将在没有错误引发时执行:
try:
print("Hello")
except:
print("出现了错误")
else:
print("没有出错")
finally
如果指定了 finally 块,不管 try 块是否引发错误,都将执行该块:
try:
print(x)
except:
print("发生了错误")
finally:
print("'try except' 完成了")
这对于关闭对象和清理资源非常有用:
try:
f = open("demofile.txt")
try:
f.write("Lorum Ipsum")
except:
print("写入文件时出错")
finally:
f.close()
except:
print("打开文件时出错")
程序可以继续运行,而不会保持文件对象处于打开状态。
引发异常
作为 Python 开发人员,您可以选择在发生条件时引发异常。
要引发(或触发)异常,请使用 raise 关键字。
x = -1
if x 0:
raise Exception("抱歉,不能小于零")
raise 关键字用于引发异常。
您可以定义要引发的错误类型以及要显示给用户的文本:
x = "hello"
if not type(x) is int:
raise TypeError("只允许整数")
点击关注作者,阅读全文
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Python 异常处理:try、except、else 和 finally 的使用指南
本文地址: https://pptw.com/jishu/571355.html