1.raise語句丟擲異常
2.aseert語句
3.自定義異常
def testraise():
for i in range(5):
if i==2:
raise nameerror #手工丟擲異常
#print('hello')
print(i)
print('end.......')
testraise()
注意:手工丟擲的異常如果不捕獲,同樣會中斷程式執行。
捕獲手工丟擲的異常:
def testraise():
for i in range(5):
try:
if i==2:
raise nameerror
#print('hello')
except nameerror:
print('raise a nameerror!')
print(i)
print('end.......')
testraise()
手工丟擲異常之 ---assert丟擲異常:
def testassert():
for i in range(3):
try:
assert i<2 #當i<2不成立時,就會丟擲異常
except assertionerror:
print('raise a assertionerror!')
print(i)
print('end.......')
testassert()
自定義乙個異常並拋出自定義異常:
class rangeerror(exception):
def __init__(self,value):
self.value=value #value是異常發生時的資訊
def __str__(self): #返回異常發生時的資訊的字串
return self.value
raise rangeerror('rangeerror')
丟擲異常 自定義異常
1 try catch try catch是這之間所包含的 如果出現異常時捕獲他,並進行處理的,如果 之間有錯誤,不會影響程式繼續執行下去,程式會繼續往後執行。2 throw 是在程式中明確丟擲引發的異常,比如throw new exception 3 finally 不管有沒有異常程式段中都會被執...
如何丟擲異常,自定義異常
定義乙個方法,丟擲 陣列越界和算術異常 多個異常 用 隔開 public void test1 int x throws arrayindexoutofbound ception,arithmeticexception 資料越界異常 else if x 1 算術異常 else if x 2 publ...
OC丟擲異常與自定義異常類
main.m oc丟擲異常與自定義異常類 created by goddog on 15 1 11.1.自行丟擲異常,應該使用 throw語句,throw語句可以單獨使用,throw語句丟擲的不是異常類,而是乙個異常例項。myexception.h oc丟擲異常與自定義異常類 created by ...