Python中處理unchecked未捕獲異常實例
來源:易賢網(wǎng) 閱讀:999 次 日期:2015-01-21 14:30:36
溫馨提示:易賢網(wǎng)小編為您整理了“Python中處理unchecked未捕獲異常實例”,方便廣大網(wǎng)友查閱!

Talk Is Cheap

和Java一樣,python也提供了對于checked exception和unchecked exception. 對于checked exception,我們通常使用try except可以顯示解決,對于unchecked 異常,其實也是提供回調或者是鉤子來幫助我們處理的,我們可以在鉤子里面記錄崩潰棧追蹤或者發(fā)送崩潰數(shù)據(jù).

下面代碼可以實現(xiàn)python unchecked exception回調,并輸出日志信息.

Show Me The Code

代碼如下:

#!/usr/bin/env python

# coding=utf-8

import os, sys

import logging

logger = logging.getLogger(__name__)

handler = logging.StreamHandler(stream=sys.stdout)

logger.addHandler(handler)

def handle_exception(exc_type, exc_value, exc_traceback):

if issubclass(exc_type, KeyboardInterrupt):

sys.__excepthook__(exc_type, exc_value, exc_traceback)

return

logger.error("Uncaught exception", exc_info=(exc_type, exc_value, exc_traceback))

sys.excepthook = handle_exception

if __name__ == "__main__":

raise RuntimeError("Test unhandled Exception")

相關解釋

1.上述忽略處理終端下鍵盤按Ctrl + C 終止異常.

2.上述使用python的日志管理模塊輸出格式化的異常信息.

更多信息請查看IT技術專欄

更多信息請查看腳本欄目
易賢網(wǎng)手機網(wǎng)站地址:Python中處理unchecked未捕獲異常實例
關于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點

版權所有:易賢網(wǎng)