若是不捕獲錯誤,天然能夠讓Python解釋器來打印出錯誤堆棧,但程序也被結束了
既然能捕獲錯誤,就能夠把錯誤堆棧打印出來,而後分析錯誤緣由,同時,讓程序繼續執行下去spa
logging模塊
Python內置的logging模塊能夠很是容易地記錄錯誤信息
經過配置,logging還能夠把錯誤記錄到日誌文件裏,方便過後排查日誌
import logging def foo(s): return 10 / int(s) def bar(s): return foo(s) * 2 def main(): try: bar('0') except Exception as e: logging.exception(e) main() print('END') #一樣是出錯,但程序打印完錯誤信息後會繼續執行,並正常退出