加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

Python记录详细调用堆栈日志的方法

发布时间:2020-12-16 20:16:16 所属栏目:Python 来源:网络整理
导读:本篇章节讲解Python记录详细调用堆栈日志的方法。供大家参考研究。具体实现方法如下: import sysimport osdef detailtrace(info): retStr = "" curindex=0 f = sys._getframe() f = f.f_back # first frame is detailtrace,ignore it while hasattr

本篇章节讲解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(<module>:27)->aaa1.py(main:24)->aaa1.py(bar:21)->aaa1.py(foo:18)->hello world

希望本文所述对大家的Python程序设计有所帮助。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读