• 技术文章 >后端开发 >Python教程

    Python如何记录调用堆栈日志实现方法?

    伊谢尔伦伊谢尔伦2017-06-28 13:48:49原创848
    这篇文章主要介绍了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(<module>:27)->aaa1.py(main:24)->aaa1.py(bar:21)->aaa1.py(foo:18)->hello world

    以上就是Python如何记录调用堆栈日志实现方法?的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:Python 堆栈 调用
    上一篇:python堆排序算法实例代码 下一篇:python如何实现堆栈与队列的实例详解
    20期PHP线上班

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• Python爬虫超详细讲解• 总结分享Python冷门的技巧• 一文搞懂Python爬虫解析器BeautifulSoup4• 聊聊Python中列表和字典前加星号(**)• python网络爬虫方向的第三方库有哪些
    1/1

    PHP中文网