1,異常處理java
python 中提供了相似於 java中的異常處理機制,即:try ... except ... finally
python
其中,except 能夠有多個,而 finally 老是會被執行。程序員
因爲異常實際上是一個類,並且全部的異常類都來源於頂層異常類 Exception,各個異常類之間又具備層次關係。所以,使用 except 捕獲異常的時候,上一個 except 會捕獲其自己以及其下全部子類的異常信息。所以,若是當前異常類是上一個 except 捕獲異常類的子類,那麼當前 except 不會捕捉到任何異常信息,由於已經被上一層攔截!學習
相反,若是當前 except 可以捕獲到異常,那麼異常也不會傳遞到下一個 except !
spa
正如程序看到的同樣,finally 塊是必定會被執行的,無論有沒有異常產生!調試
一樣的,你也能夠定義本身的異常類,可是須要繼承自 python 中的某個異常類。而後在程序中須要的時候「拋出」它們(使用 raise 關鍵字),對於拋出的異常,若是在當前位置沒有處理方法,那麼異常會「向上傳遞」直到有程序處理或者當拋到頂層的時候交給 python 來輸出默認信息。
日誌
2,代碼調試繼承
程序出錯在所不免,在出錯的時候有一種行之有效的調試方法是頗有必要的。
io
簡單粗暴的方式在是須要的地方直接使用 print 來打印調試信息
程序
比 print 稍微好一點的就是採用斷言:assert
還有一個種方法是使用 logging 模塊,來進行日誌的收集,這個能夠後期再去研究!
固然了,若是有一個稱手的IDE,直接開啓斷點調試是最好的了 ^_^
-----------------------------------------------------厲害的Python程序員----------------------------------------
晉級到下一個模式——經常使用模塊探究學習