Python 异常处理:try、except、else 和 finally 的使用指南
異常處理
當發生錯誤(或我們稱之為異常)時,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("只允許整數")
最后
為了方便其他設備和平臺的小伙伴觀看往期文章:公眾號搜索Let us Coding,或者掃描下方二維碼,關注公眾號,即可獲取最新文章。
看完如果覺得有幫助,歡迎點贊、收藏和關注
總結
以上是生活随笔為你收集整理的Python 异常处理:try、except、else 和 finally 的使用指南的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 高精度加法(C语言实现)
- 下一篇: NEFU OJ Problem1356