簡介

  1. 程式異常 (exceptions) 是寫程式一定會碰到的問題。
  2. 範例:定義一除法函式,呼叫時若除數為 0,就可能出錯。
    [dywang@dywmac zzz]$ cat except1.py 
    #!/usr/bin/python
    # coding: utf-8
    
    def div(x, y):
    	return x/y
    
    print div(6, 2)
    print div(3, 0)
    
  3. 執行結果:當呼叫時參數 6,2 回傳 3,但參數 3,0 時出現 ZeroDivisionError 的錯誤,程式無法繼續執行。
    [dywang@dywmac zzz]$ ./except1.py 
    3
    Traceback (most recent call last):
      File "./except1.py", line 8, in <module>
        print div(3, 0)
      File "./except1.py", line 5, in div
        return x/y
    ZeroDivisionError: integer division or modulo by zero
    
  4. Python 提供異常捕捉 (如 ZeroDivisionError) 並透過異常處理程序 (try -except ),讓程式可以繼續往下執行。