天天看點

Python入門學習之異常處理機制

  異常即是一個事件,該事件會在程式執行過程中發生影響程式的正常執行。python提供了兩個非常重要的功能來處理python程式在運作中出現的異常和錯誤。今天的Python入門學習課程就給大家講解一下異常處理機制。

  當你的程式中出現異常情況時就需要異常處理。比如當你打開一個不存在的檔案時,當你的程式中有一些無效的語句時,Python會提示你有錯誤存在。作為程式員,我們希望程式足夠健壯,即使發生異常,也能夠很好地恢複過來。那麼該如何有效的預防異常出現呢?你可以采用下列幾種方法:

  1、try/except子句

  try...except語句可以用于捕捉并處理錯誤。通常的語句放在try塊中,錯誤處理語句放在except塊中。

  文法:

  try:

  被檢測的代碼塊

  except 異常類型:

  try中一旦檢測到異常,就執行這個位置的邏輯

  在 Python 中,try/except 語句用于處理程式執行過程中出現的一些異常情況。需要注意的是,try...except應該盡量少用,因為它本身就是你附加給你的程式的一種異常處理的邏輯,與你的主要的工作是沒有關系的,這種東西加的多了,會導緻你的代碼可讀性變差。隻有在有些異常無法預知的情況下,才應該加上try...except,其他的邏輯錯誤應該盡量修正。

Python入門學習之異常處理機制

  2、else

  else代碼塊不是必須的,它隻有在需要依賴于try代碼塊成功執行時才需要。它在try-except中的結構位置如下:

  片段1

  except 異常對象:

  片段2

  else:

  片段3

  try-except-else代碼塊的工作原理:python嘗試執行try代碼塊中的片段1代碼,片段1的代碼應該是隻有可能引發異常的代碼,不會引發異常的代碼不要放在try代碼塊中(片段1)。如果片段1的代碼發生了異常,就執行片段2的代碼進行異常處理,否則,如果片段1的代碼沒有發生異常,就執行片段3的代碼,片段3的代碼應該是僅在片段1的代碼成功執行時才需要運作的代碼。

  3、finally子句

  當你正在讀檔案或還未關閉檔案時發生了異常該怎麼辦呢?你應該使用try...finally語句以釋放資源。

  try語句可以有一個可選的finally子句。無論什麼情況,該子句都會被執行,通常用于釋放外部資源。一旦使用,無論檔案是否打開成功,都必須清理資源。是以,在finally子句中使用close(),可以確定即使發生異常,檔案也能夠被關閉。