標籤:print raise admin min 運行 col lin 錯誤類型 range
Python 中內建了多種異常處理方式。
1 try····except···
a = 10b = 0try: i = a/bexcept Exception, e: print e>>> integer division or modulo by zero# 先執行try語句塊的內容,若能正常執行,則略過except內容;若try語句塊不能正常運行,則緊跟著執行except語句塊內容;
a = 10b = 0try: i = a/bexcept Exception, e: print efinally: print 101
>>> integer division or modulo by zero
101
# 先執行try語句塊的內容,若能正常執行,則略過except內容;若try語句塊不能正常運行,則緊跟著執行except語句塊內容;最後執行finally語句塊;(無論try模組是否正常運行,finally語句塊都要執行)
2 assert 語句
>>> assert 3>2, ‘error‘
>>>
# 3>2 等式成立,不返回任何結果
>>> assert 1>2, ‘error‘
Traceback (most recent call last):
File "C:\Users\Administrator\Desktop\xy.py", line 1, in <module>
assert 1>2, ‘error‘
AssertionError: error
# 1>2 等式不成立,拋出異常
3 raise 語句
>>> for i in range(5): if i == 2: raise ValueError #(ValueError是系統規定的錯誤類型)
# raise Exception(‘i == 2’) #拋出自訂的錯誤類型 else: print i01Traceback (most recent call last):
File "C:\Users\Administrator\Desktop\xy.py", line 4, in <module>
raise ValueError
ValueError
‘‘‘
0
1
Traceback (most recent call last):
File "C:\Users\Administrator\Desktop\xy.py", line 4, in <module>
raise Exception(‘i==2‘)
Exception: i==2
‘‘‘
Python 中的異常處理