1 #異常捕獲---指定異常類型 2 try: 3 #嘗試 4 fi=open(r'D:\Users\4399-3046\Desktop\test.txt',mode='wb'); 5 fi.write('寫入文字'); 6 #若發生異常,且異常錯誤類型=IOERROR,則打印出錯誤內容(好比把後面的mode='W',去掉,就會捕獲這個異常) 7 except IOError:----->這就是指定的異常 8 print('此處捕獲了IOERROR'); 9 #不然(至關於沒有捕獲到異常),則正常運行try裏的語句,若運行成功,打印出【寫入成功】 10 else: 11 print('未發生異常,寫入成功');
1 #異常捕獲---不指定異常類型 2 try: 3 #嘗試 4 fi=open(r'D:\Users\4399-3046\Desktop\test.txt',mode='wb'); 5 fi.write('寫入文字'); 6 #若發生異常,且異常錯誤類型=IOERROR,則打印出錯誤內容(好比把後面的mode='W',去掉,就會捕獲這個異常) 7 except Except as e :------------->這裏沒有指定異常,全部異常(ERROR)都會拋出 8 print('此處捕獲了異常',e); 9 #不然(至關於沒有捕獲到異常),則正常運行try裏的語句,若運行成功,打印出【寫入成功】 10 else: 11 print('未發生異常,寫入成功');
==============總結1====================python
1 try: 2 print('執行可能出錯的代碼'); 3 except Exception as e:----------->由於不肯定會捕獲到什麼異常,所以使用全部異常的基類 4 print('處理異常的操做'); 5 else: 6 print('這裏是當沒有異常的操做'); 7 finally: 8 print('這裏是即便發生異常也會執行的地方');
例子:spa
1 try: 2 s=input('請輸入要輸入的字符:'); 3 i=int(s); 4 except Exception as e: 5 print(e);------->typeError 6 else: 7 print(i); 8 finally: 9 print('你輸入的東西有誤哦');
==============總結2--自定義異常--raise====================code
以前的異常捕獲,能夠說是程序本身觸發blog
①而raise不一樣,有了它,咱們能夠本身觸發異常input
②觸發raise異常後,後面的代碼將再也不運行it
③當程序出現錯誤,python會自動引起異常錯誤,也能夠經過raise顯式地引起異常io
一旦執行了raise語句,raise後面的語句將不能執行。class
===========對代碼的異常捕獲是必要的,主要仍是視狀況而定===test
一、對於程序