python python try異常處理機制

2022-05-13 01:14:43 字數 1816 閱讀 3195

#python的try語句有兩種風格

#一:種是處理異常(

try/except/else

)#二:種是無論是否發生異常都將執行最後的**(

try/finally

)try/except/else風格

try:

《語句》 #

執行別的**

except

《名字》:

《語句》 #

如果在try部份引發了'name'異常

except

《名字》,《資料》:

《語句》 #

如果引發了'name'異常,獲得附加的資料

else

:

《語句》 #

如果沒有異常發生

#try的工作原理是,當開始乙個try語句後,python就在當前程式的上下文中作標記,這樣當異常出現時就可以回到這裡,try子句先執行,接下來會發生什麼依賴於執行時是否出現異常。

#1、如果當try後的語句執行時發生異常,python就跳回到try並執行第乙個匹配該異常的except子句,異常處理完畢,控制流就通過整個try語句(除非在處理異常時又引發新的異常)。

#2、如果在try後的語句裡發生了異常,卻沒有匹配的except子句,異常將被遞交到上層的try,或者到程式的最上層(這樣將結束程式,並列印預設的出錯資訊)。

#3、如果在try子句執行時沒有發生異常,python將執行else語句後的語句(如果有else的話),然後控制流通過整個try語句。

try/finally風格

try:

《語句》

finally

:

《語句》 #

退出try時總會執行

python總會執行finally子句,無論try子句執行時是否發一異常。

1、如果沒有發生異常,python執行try子句,然後是finally子句,然後繼續。

2、如果在try子句發生了異常,python就會回來執行finally子句,然後把異常遞交給上層try,控制流不會通過整個try語句。

當你想無論是否發生異常都確保執行某些**時,

try/finally是有用的。

#這個在開啟檔案的時候有用 finally總是在最後close()檔案

try 語句子句形式表

except

: 捕獲所有異常

except

name: 只捕獲特定的異常

except

name,value: 捕獲異常和它的附加資料(將異常的資訊儲存到value,)

except

(name1,name2): 捕獲任何列出的異常

else

: 如果沒有異常

finally

: 總是執行

>>> try

: f = open('

file.txt')

except

ioerror, e:

print

eelse

:

print

'wrong

'[errno 2] no such file or directory: '

file.txt

'最新的python版本 支援try/except/finally

try: 1:如果x沒有異常,執行z,i

x 2:如果x有異常, 一:如果except捕捉到異常則執行y,i

except

(name): 二:沒捕捉到,執行i,然後返回內建異常處理

yelse

: z

finally

: i

使用springboot的全域性異常處理機制

這是我第一次學習使用spring boot全域性異常處理機制,分享一點兒經驗給大家 controlleradvice public class globalexceptionhandler else 輸出異常的堆疊資訊 exception.printstacktrace 構造錯誤返回值 string...

異常處理機制

異常處理的三個步驟 檢查異常,丟擲異常,處理異常 異常處理基本原理 把需要檢測的程式放到try塊中,把異常處理的程式放在catch塊中。如果執行乙個函式出現了異常,可以丟擲異常資訊。然後查詢try塊下面的catch塊是否可以處理該異常。如果該函式不處理該異常,將傳遞給它的上一級函式 呼叫函式 如果它...

異常處理機制

1 c 中異常處理機制使得異常的引發和異常的處理不必在同乙個函式中。2 異常是專門針對抽象程式設計中的一系列錯誤處理的,c 的函式機制是棧結構,先進後出,依次訪問,無法跳躍。3 異常超脫於函式機制,決定了其對函式的跨越式回跳。4 異常跨越函式 普通用法 基本用法 void add int a,int...