簡介

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