【发布时间】:2018-03-29 16:50:40
【问题描述】:
当我在 python 中调用一个函数时,我如何知道会发生什么,例如,我已经导入了一个模块并想从中调用一个函数。我需要知道这个函数调用了哪些函数以及它们在执行时的位置。非常类似于回溯,但没有错误。 traceback.format_stack() 不起作用,因为我无法将它放在源代码中运行。任何想法如何使用它?
例子:
import amodule
#do something here?
amodule.some_method()
#or maybe here?
输出:
File <fname1> in line 13, in <module>
module.some_method()
File <fname2> in line 53, in <module>
module2.some_other_method()
等等
我怎样才能最好地做到这一点?
编辑: 我正在考虑的用途是有一个由多个文件组成的模块,这些文件相互引用。如果我想编辑一个特定的函数,我需要知道在哪里编辑什么。我宁愿不搜索源代码来找到发生在哪里的整个长链
【问题讨论】: