2

考虑以下伪代码:

func1():
  func2() #func2 is called inside func1

我的问题是,在 func2 中我可以访问调用它的函数的名称吗?在这种情况下,func1? 谢谢!

4

1 回答 1

8
import inspect

def func2():
    cframe = inspect.currentframe()
    func = inspect.getframeinfo(cframe.f_back).function
    print 'called from ' + func

def func1():
    func2()

func2()
func1()

输出:

called from <module>
called from func1
于 2013-06-14T00:18:41.353 回答