1,try…except (1) 關註是否會引起異常的語句放在try段; (2) 根據異常的不同,except可以有多個分支; (3) 可以有一個else分支,表示沒有異常發生。 例如: 2,raise (1) 假如在try部分有條件分支,而分支里可能出現異常,可以用raise來提取異常; (2) ... ...
1,try…except
(1) 關註是否會引起異常的語句放在try段;
(2) 根據異常的不同,except可以有多個分支;
(3) 可以有一個else分支,表示沒有異常發生。
例如:
2,raise
(1) 假如在try部分有條件分支,而分支里可能出現異常,可以用raise來提取異常;
(2) raise處理的異常,應該是Exception的一個子類。
例如:
3,try…finally
在try裡面索取資源,在finally裡面釋放資源。這樣即使發生異常,也可以保證資源被正常釋放。
例如:
上面例子中,即使出現異常,程式退出前finally語句會被執行,文件可以被正常關閉。
4,with
可以用with達到與try…finally相同的效果。
例如:
with隱含的功能是,假設open返回的句柄是thefile,每次執行with下麵的block時,都會調用thefile.entry,每次退出時,都會調用thefile.exit。