好程序員Python分享入門之異常處理機制,異常便是一個事件,該事件會在程序執行過程當中發生影響程序的正常執行。python提供了兩個很是重要的功能來處理python程序在運行中出現的異常和錯誤。今天的Python入門學習課程就給你們講解一下異常處理機制。python
當你的程序中出現異常狀況時就須要異常處理。好比當你打開一個不存在的文件時,當你的程序中有一些無效的語句時,Python會提示你有錯誤存在。做爲程序員,咱們但願程序足夠健壯,即便發生異常,也可以很好地恢復過來。那麼該如何有效的預防異常出現呢?你能夠採用下列幾種方法:程序員
一、try/except子句學習
try...except語句能夠用於捕捉並處理錯誤。一般的語句放在try塊中,錯誤處理語句放在except塊中。對象
語法:事件
try:資源
被檢測的代碼塊入門
except 異常類型:原理
try中一旦檢測到異常,就執行這個位置的邏輯語法
在 Python 中,try/except 語句用於處理程序執行過程當中出現的一些異常狀況。須要注意的是,try...except應該儘可能少用,由於它自己就是你附加給你的程序的一種異常處理的邏輯,與你的主要的工做是沒有關係的,這種東西加的多了,會致使你的代碼可讀性變差。只有在有些異常沒法預知的狀況下,才應該加上try...except,其餘的邏輯錯誤應該儘可能修正。程序
二、else
else代碼塊不是必須的,它只有在須要依賴於try代碼塊成功執行時才須要。它在try-except中的結構位置以下:
try:
片斷1
except 異常對象:
片斷2
else:
片斷3
try-except-else代碼塊的工做原理:python嘗試執行try代碼塊中的片斷1代碼,片斷1的代碼應該是隻有可能引起異常的代碼,不會引起異常的代碼不要放在try代碼塊中(片斷1)。若是片斷1的代碼發生了異常,就執行片斷2的代碼進行異常處理,不然,若是片斷1的代碼沒有發生異常,就執行片斷3的代碼,片斷3的代碼應該是僅在片斷1的代碼成功執行時才須要運行的代碼。
三、finally子句
當你正在讀文件或還未關閉文件時發生了異常該怎麼辦呢?你應該使用try...finally語句以釋放資源。
try語句能夠有一個可選的finally子句。不管什麼狀況,該子句都會被執行,一般用於釋放外部資源。一旦使用,不管文件是否打開成功,都必須清理資源。因此,在finally子句中使用close(),能夠確保即便發生異常,文件也可以被關閉。