經常使用python處理try except異常的三種方式

若是你在寫python程序時遇到異常後想進行以下處理的話,通常用try來處理異常,假設有下面的一段程序:python

try :
     語句 1
     語句 2
     .
     .
     語句N
except  .........:
     do something .......

可是你並不知道"語句1至語句N"在執行會出什麼樣的異常,但你還要作異常處理,且想把出現的異常打印出來,並不中止程序的運行,因此在"except ......"這句應怎樣來寫呢?spa

總結了一下3個方法日誌

方法一:捕獲全部異常code

ry :  
     a = b  
     b = c  
except  Exception,e:  
     print  Exception, ":" ,e

方法二:採用traceback模塊查看異常string

#引入python中的traceback模塊,跟蹤錯誤
import  traceback  
try :  
     a = b  
     b = c  
except :  
     traceback.print_exc()

方法三:採用sys模塊回溯最後的異常io

#引入sys模塊
import  sys  
try :  
     a = b  
     b = c  
except :  
     info = sys.exc_info()  
     print  info[ 0 ], ":" ,info[ 1 ]

可是,若是你還想把這些異常保存到一個日誌文件中,來分析這些異常,那麼請看下面的方法:function

把 traceback.print_exc() 打印在屏幕上的信息保存到一個文本文件中class

import  traceback
try :  
     a = b  
     b = c  
except :  
     f = open ( "c:log.txt" , 'a' )  
     traceback.print_exc( file = f)  
     f.flush()  
     f.close()
相關文章
相關標籤/搜索