[2015-08-18] python024

安裝包:

python setup.py install 

python setup build:
    --build-base=/path/to/build_dir
    lib,lib.platform 
第三方模塊的默認安裝路徑通常爲:site-packages 
自定義安裝路徑:
    --user=
    --prefix=
    --exec-prefix=
深度定製:
    --install-purelib=/path/to/python_lib
    --install-platlib=/path/to/plat_lib
        --install-lib=/path/to/lib 
    --install-scripts=/path/to/bin 
        可執行文件的安裝路徑
    --install-data=
    --install-headers=

Python異常:

  • Python的運行時錯誤稱作異常
    • 語法錯誤:軟件的結構上有錯誤而導致不能被解釋器解釋或不能被編譯器編譯
    • 邏輯錯誤:由於不完整或不合法的輸入所致,也可能是邏輯無法生成、計算或者輸出結果需要的過程無法執行等
  • Python異常是一個對象,表示錯誤或意外情況
  • 在Python檢測到一個錯誤時,將觸發一個異常
    • Python可以通過異常傳導機制傳遞一個異常對象,發出一個異常情況出現的信號
    • 程序員也可以在代碼中手動觸發異常
  • Python異常也可以理解爲:程序出現了錯誤而在正常控制流以外採取的行爲
    • 第一階段:解釋器觸發異常,此時當前程序流將被打斷
    • 第二階段:異常處理,如忽略非致命性錯誤、減輕錯誤帶來的影響等

異常的功用:

  • 錯誤處理
    • Python的默認處理:停止程序,打印錯誤消息
    • 使用try語句處理異常並從異常中恢復
  • 事件通知
    • 用於發出有效狀態信號
  • 特殊情況處理
    • 無法調整代碼去處理的場景
  • 終止行爲
    • try/finally語句可確保執行必需的結束處理機制
  • 非常規控制流程
    • 異常是一種高級跳轉(goto)機制

檢測和處理異常:

  • 異常通過try語句來檢測
    • 任何在try語句塊裏的代碼都會被監測,以檢查有無異常發生
  • try語句主要有兩種形式
    • try-except:檢測和處理異常
      • 可以有多個except
      • 支持使用else子句處理沒有探測異常的執行的代碼
    • try-finally:僅檢查異常並做一些必要的清理工作
      • 僅能有一個finally
  • try語句的複合形式
    • try-except-finally

try-except語句:

定義了進行異常監控的一段代碼,並且提供了處理異常的機制
語法:
    try:
        try_ uite 
    except Exception[,reason]:
        except_suite

try-except-else語句:

try語句可以帶多個except子句,還可以有一個可選的else子句,語法格式如下:
    try:
        try_suite
    except Exception1[,reason]:
        suite_exception1
    except(Exception2,Exception3,...)[,reason]:
        suite_ 
    ...
    except:
        suite_ 
    else:
        else_suite 
except分句個數沒有限制,但else只能有一個
沒有異常發生時,else分句纔會執行
沒有符合的except分句時,異常會向上傳遞到程序中的之前進入的try中或者到進程的頂層

try-finally語句:

無論異常是否發生,finally子句都會執行
    常用於定義必需進行的清理動作,如關閉文件或斷開服務器連接等
finally中的所有代碼執行完畢後會繼續向上一層引發異常
語法: 
    try:
        try_suite
    finally:
        finally_suite
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章