try:
print(x)
except NameError:
print("Variable x is not defined")
except:
print("Something else went wrong")
运行实例
Else
如果没有引发错误,那么您可以使用 else 关键字来定义要执行的代码块:
实例
在本例中,try 块不会生成任何错误:
try:
print("Hello")
except:
print("Something went wrong")
else:
print("Nothing went wrong")
运行实例
Finally
如果指定了 finally 块,则无论 try 块是否引发错误,都会执行 finally 块。
实例
try:
print(x)
except:
print("Something went wrong")
finally:
print("The 'try except' is finished")
运行实例
这对于关闭对象并清理资源非常有用:
实例
试图打开并写入不可写的文件:
try:
f = open("demofile.txt")
f.write("Lorum Ipsum")
except:
print("Something went wrong when writing to the file")
finally:
f.close()
运行实例
程序可以继续,而且不会打开文件对象。
引发异常
作为 Python 开发者,您可以选择在条件发生时抛出异常。
如需抛出(引发)异常,请使用 raise 关键词。
实例
假如 x 小于 0,则引发异常并终止程序:
x = -1
if x < 0:
raise Exception("Sorry, no numbers below zero")
运行实例
raise 关键字用于引发异常。
您能够定义所引发异常的类型、以及打印给用户的文本。
实例
如果 x 不是整数,则引发 TypeError:
x = "hello"
if not type(x) is int:
raise TypeError("Only integers are allowed")
运行实例
Python PIP
Python 命令输入