天天看點

Python異常處理機制

Python和java相比,同樣擁有強大的異常處理機制,下面讓我們一起來看看Python是如何處理異常的

1,try...except....

eg1:

a,b=1,0

try:

    a/b

except:

    print "ERROR"

print “END”

output:

ERROR

END

解析:try測試裡邊的代碼是否有錯,若有錯執行except語句,然後執行最後一行print語句,就是說Python的try,except不管怎樣都會執行最後的print語句

2,try...except....else.....

eg2:

    a/2

else:

    print "執行else"

output:執行else

解析如果try語句沒有錯誤,會執行最後的else語句

3,try...except Exception as e....

eg3:

except Exception as e:

    print e

output:integer division or modulo by zero

解析:會列印出具體的異常資訊

4,try.....finally....

5,用raise引發異常,之後的代碼将不能執行

用法:raise MyError

eg4:

     s = None

     if s is None:

         print "s 是空對象"

         raise NameError     #如果引發NameError異常,後面的代碼将不能執行

     print len(s)

except TypeError:

     print "空對象沒有長度"

output:

s 是空對象

Traceback (most recent call last):

  File "E:\【代碼】Python\StudyBasic\SomeProgram\異常.py", line 8, in <module>

    raise NameError     #如果引發NameError異常,後面的代碼将不能執行

NameError