python的stack trace是什么东西,百度了一下,叫“堆栈踪迹”,不太明白。
通俗点说就是告诉你你的程序运行到哪了,那些函数是怎么层层调用的,通常总在追踪异常上
可以通过如下方法获得
import traceback
try:
raise ValueError('An Error')
except ValueError as e:
print(e)
traceback.print_exc(file=sys.stdout)
或者你也可以这样:
import pdb
def func():
# Do some magic
pdb.set_trace()
这样在运行到这里的时候就会打开pdb,相当于gdb的pythong版本,你可以在那里通过bt命令来检查当前的调用栈