當前位置:  首頁  >  PHP教程  >  PHP 應用  >  知識庫

Python記錄詳細調用堆棧日志的方法

這篇文章主要介紹了Python記錄詳細調用堆棧日志的方法,涉及Python調用堆棧日志的相關技巧,具有一定參考借鑒價值,需要的朋友可以參考下
本文實例講述了Python記錄詳細調用堆棧日志的方法。分享給大家供大家參考。具體實現方法如下:

import sys
import os
def detailtrace(info):
  retStr = ""
  curindex=0
  f = sys._getframe()
  f = f.f_back    # first frame is detailtrace, ignore it
  while hasattr(f, "f_code"):
    co = f.f_code
    retStr = "%s(%s:%s)->"%(os.path.basename(co.co_filename),
         co.co_name,
         f.f_lineno) + retStr
    f = f.f_back
  print retStr+info
def foo():
  detailtrace("hello world")
def bar():
  foo()
def main():
  bar()
if __name__ == "__main__":
  main()

輸出:

aaa1.py(:27)->aaa1.py(main:24)->aaa1.py(bar:21)->aaa1.py(foo:18)->hello world

希望本文所述對大家的Python程序設計有所幫助。

吐了個 "CAO" !
掃碼關注 PHP1 官方微信號
PHP1.CN | 中國最專業的PHP中文社區 | PHP資訊 | PHP教程 | 數據庫技術 | 服務器技術 | 前端開發技術 | PHP框架 | 開發工具 | PHP問答
Copyright ? 1998 - 2020 PHP1.CN. All Rights Reserved PHP1.CN 第一PHP社區 版權所有
     
28玩法