'Python學習第50課-處理錯誤和異常'

Python 時問新 2019-07-19
"

【每天幾分鐘,從零入門python編程的世界!】

在工作當中會經常出現意料不到的錯誤和異常,就需要我們對可能出現的錯誤和異常進行預判,然後加上捕獲和處理錯誤異常的代碼,否則,程序在運行過程中,遇到錯誤和異常就會crash崩潰,無法繼續向下執行。

●Python的錯誤種類:

①語法錯誤,或稱解析錯誤。

如下實例,我們編寫一段代碼:

"

【每天幾分鐘,從零入門python編程的世界!】

在工作當中會經常出現意料不到的錯誤和異常,就需要我們對可能出現的錯誤和異常進行預判,然後加上捕獲和處理錯誤異常的代碼,否則,程序在運行過程中,遇到錯誤和異常就會crash崩潰,無法繼續向下執行。

●Python的錯誤種類:

①語法錯誤,或稱解析錯誤。

如下實例,我們編寫一段代碼:

Python學習第50課-處理錯誤和異常

運行結果:

"

【每天幾分鐘,從零入門python編程的世界!】

在工作當中會經常出現意料不到的錯誤和異常,就需要我們對可能出現的錯誤和異常進行預判,然後加上捕獲和處理錯誤異常的代碼,否則,程序在運行過程中,遇到錯誤和異常就會crash崩潰,無法繼續向下執行。

●Python的錯誤種類:

①語法錯誤,或稱解析錯誤。

如下實例,我們編寫一段代碼:

Python學習第50課-處理錯誤和異常

運行結果:

Python學習第50課-處理錯誤和異常

運行結果提示第8行有語法錯誤,原來我們在print()前面、True後面少寫一個冒號。

②異常

即使我們寫的程序語法沒有問題,但是在運行過程中還是有可能發生錯誤,這種在運行時檢測到的錯誤稱為異常。

異常有不同的類型,會以錯誤信息的形式,在運行結果區域被展示出來。

如下實例:

10 * (1/0)

ZeroDivisionError: division by zero

4 + spam*3

NameError: name 'spam' is notdefined

'2' + 2

TypeError: Can't convert 'int' object to str implicitly

"

【每天幾分鐘,從零入門python編程的世界!】

在工作當中會經常出現意料不到的錯誤和異常,就需要我們對可能出現的錯誤和異常進行預判,然後加上捕獲和處理錯誤異常的代碼,否則,程序在運行過程中,遇到錯誤和異常就會crash崩潰,無法繼續向下執行。

●Python的錯誤種類:

①語法錯誤,或稱解析錯誤。

如下實例,我們編寫一段代碼:

Python學習第50課-處理錯誤和異常

運行結果:

Python學習第50課-處理錯誤和異常

運行結果提示第8行有語法錯誤,原來我們在print()前面、True後面少寫一個冒號。

②異常

即使我們寫的程序語法沒有問題,但是在運行過程中還是有可能發生錯誤,這種在運行時檢測到的錯誤稱為異常。

異常有不同的類型,會以錯誤信息的形式,在運行結果區域被展示出來。

如下實例:

10 * (1/0)

ZeroDivisionError: division by zero

4 + spam*3

NameError: name 'spam' is notdefined

'2' + 2

TypeError: Can't convert 'int' object to str implicitly

Python學習第50課-處理錯誤和異常

●Python的異常處理

異常處理通常可以是如下實例的結構:


while True:

try:

x=int(input("enter a int number please:"))

break

except:

print("That is not correct,Are you kiding?")

finally:

print("You have enter a number.")

說明:

●首先執行try語句(在關鍵字try和關鍵字except之間的語句)。

●如果try語句沒有發生異常,則整個while循環結束。

●如果在執行try子句的過程中發生了異常,則執行except語句。

●無論try語句執行時是否發生異常,finally語句都會執行。

●當時用了try...except語句結構後,如果try發生異常,則while會一直循環下去,不會造成程序崩潰。

●一個 try 語句可能包含多個except子句,分別來處理不同的特定的異常。最多隻有一個分支會被執行。處理程序將只針對對應的try子句中的異常進行處理,而不是其他的 try 的處理程序中的異常。

●try except 語句還有一個可選的else子句,如果使用這個子句,那麼必須放在所有的except子句之後。這個子句將在try子句沒有發生任何異常的時候執行。

格式如下:

try

except

else

關於異常及異常處理,我們先學習基本的結構和用法,更復雜的我們先不深入去了解。

"

【每天幾分鐘,從零入門python編程的世界!】

在工作當中會經常出現意料不到的錯誤和異常,就需要我們對可能出現的錯誤和異常進行預判,然後加上捕獲和處理錯誤異常的代碼,否則,程序在運行過程中,遇到錯誤和異常就會crash崩潰,無法繼續向下執行。

●Python的錯誤種類:

①語法錯誤,或稱解析錯誤。

如下實例,我們編寫一段代碼:

Python學習第50課-處理錯誤和異常

運行結果:

Python學習第50課-處理錯誤和異常

運行結果提示第8行有語法錯誤,原來我們在print()前面、True後面少寫一個冒號。

②異常

即使我們寫的程序語法沒有問題,但是在運行過程中還是有可能發生錯誤,這種在運行時檢測到的錯誤稱為異常。

異常有不同的類型,會以錯誤信息的形式,在運行結果區域被展示出來。

如下實例:

10 * (1/0)

ZeroDivisionError: division by zero

4 + spam*3

NameError: name 'spam' is notdefined

'2' + 2

TypeError: Can't convert 'int' object to str implicitly

Python學習第50課-處理錯誤和異常

●Python的異常處理

異常處理通常可以是如下實例的結構:


while True:

try:

x=int(input("enter a int number please:"))

break

except:

print("That is not correct,Are you kiding?")

finally:

print("You have enter a number.")

說明:

●首先執行try語句(在關鍵字try和關鍵字except之間的語句)。

●如果try語句沒有發生異常,則整個while循環結束。

●如果在執行try子句的過程中發生了異常,則執行except語句。

●無論try語句執行時是否發生異常,finally語句都會執行。

●當時用了try...except語句結構後,如果try發生異常,則while會一直循環下去,不會造成程序崩潰。

●一個 try 語句可能包含多個except子句,分別來處理不同的特定的異常。最多隻有一個分支會被執行。處理程序將只針對對應的try子句中的異常進行處理,而不是其他的 try 的處理程序中的異常。

●try except 語句還有一個可選的else子句,如果使用這個子句,那麼必須放在所有的except子句之後。這個子句將在try子句沒有發生任何異常的時候執行。

格式如下:

try

except

else

關於異常及異常處理,我們先學習基本的結構和用法,更復雜的我們先不深入去了解。

Python學習第50課-處理錯誤和異常

我是時問新,歡迎關注我。跟我一起從零開始學習Python,每天花一點時間,開啟python編程新世界的大門,領略新的風光,讓人生多一種可能!

"

相關推薦

推薦中...