1. 程式人生 > >Python 異常後,啟動啟動debug調試

Python 異常後,啟動啟動debug調試

upload 異常處理 attr 修改 err bug ice spa 處理流

這裏需要修改python在異常發生後的處理流程 sys.excepthook 是python系統的異常處理器,重寫一個自定義處理器,並在打印異常信息後,啟動pdb。
import sys
def info(type, value, tb):
    # 異常類型
    # 異常值
    # 調用棧
    if hasattr(sys, ps1) or not sys.stderr.isatty():
        # we are in interactive mode or we don‘t have a tty-like
        # device, so we call the default hook
sys.__excepthook__(type, value, tb) else: import traceback, pdb # we are NOT in interactive mode, print the exception... traceback.print_exception(type, value, tb) print # ...then start the debugger in post-mortem mode. pdb.post_mortem(tb) sys.excepthook
= info

只要在代碼裏,開始import 這個自定義debug module,就可以修改掉系統默認的異常處理過程 __excepthook__
----------------------------
關註微信公眾號號:
挖金礦工:goldminer1024
為您的量化投資理想插上翅膀
技術分享圖片

Python 異常後,啟動啟動debug調試