try
區塊可讓您測試程式碼區塊以尋找錯誤。
except
區塊可讓您處理錯誤。
finally
區塊可讓您執行程式碼,無論 try 和 except 區塊的結果為何。
當我們呼叫 Python 並發生錯誤或異常時,通常會停止並產生錯誤訊息。
可以使用try 語句處理這些例外:
實例
#try 區塊會產生異常,因為x 未定義:
try: print(x) except: print("An exception occurred")
執行實例
由於try 區塊引發錯誤,因此執行except 區塊。
如果沒有try 區塊,程式會崩潰並引發錯誤:
實例
該語句將引發錯誤,因為未定義x:
print(x)
您可以根據需要定義任意數量的exception 區塊,例如,假如您要為特殊類型的錯誤執行特殊程式碼區塊:
實例
如果try 區塊引發NameError,則列印一則訊息,如果是其他錯誤則列印另一個訊息:
try: print(x) except NameError: print("Variable x is not defined") except: print("Something else went wrong")
執行實例
如果沒有引發錯誤,那麼您可以使用else 關鍵字來定義要執行的程式碼區塊:
實例
在本例中,try 區塊不會產生任何錯誤:
try: print("Hello") except: print("Something went wrong") else: print("Nothing went wrong")
執行實例
如果指定了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的Try和Except怎麼使用的詳細內容。更多資訊請關注PHP中文網其他相關文章!