从Python代码中的方法打印当前调用堆栈

从Python代码中的方法打印当前调用堆栈,第1张

从Python代码中的方法打印当前调用堆栈

这是通过traceback模块获取堆栈并进行打印的示例:

import tracebackdef f():    g()def g():    for line in traceback.format_stack():        print(line.strip())f()# Prints:# File "so-stack.py", line 10, in <module>#     f()# File "so-stack.py", line 4, in f#     g()# File "so-stack.py", line 7, in g#     for line in traceback.format_stack():

如果您真的只想将堆栈打印到stderr,则可以使用:

traceback.print_stack()

或打印到标准输出(如果要将重定向的输出保持在一起很有用),请使用:

traceback.print_stack(file=sys.stdout)

但是通过获取它可以

traceback.format_stack()
让您随心所欲地使用它。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5617560.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存