时间:2021-07-01 10:21:17 帮助过:42人阅读
本文实例讲述了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如何记录调用堆栈日志实现方法?的详细内容,更多请关注Gxl网其它相关文章!