这是通过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()让您随心所欲地使用它。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)