其他
只有 try
塊中的程式碼沒有引發異常時,才會執行 else 塊中的程式碼。如果你在丟擲異常時不想執行某些程式碼,但是你不希望捕獲該程式碼丟擲的異常,那麼這非常有用。
例如:
try:
data = {1: 'one', 2: 'two'}
print(data[1])
except KeyError as e:
print('key not found')
else:
raise ValueError()
# Output: one
# Output: ValueError
請注意,這種 else:
不能與 if
結合使用 else-clause 啟動 elif
。如果你有一個以下 if
它需要保持縮排到 else:
:
try:
...
except ...:
...
else:
if ...:
...
elif ...:
...
else:
...