Python 異常後,啟動啟動debug調試
阿新 • • 發佈:2017-12-17
upload 異常處理 attr 修改 err bug ice spa 處理流
這裏需要修改python在異常發生後的處理流程
sys.excepthook 是python系統的異常處理器,重寫一個自定義處理器,並在打印異常信息後,啟動pdb。
----------------------------
關註微信公眾號號:
挖金礦工:goldminer1024
為您的量化投資理想插上翅膀
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 hooksys.__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調試