若是你在寫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()