您的位置:首页 > 编程语言 > Python开发

飘逸的python - inspect谁调用了我

2015-07-21 14:40 106 查看
当程序出现诡异的bug时,我们需要层层去跟踪,尤其是要理清顺序。

这时如果有个清晰的调用脉络调试就容易多了。

利用inspect模块的getframeinfo方法来实现这需求。

上代码感受下。

[python] view
plaincopy

import inspect

def foo():

who = inspect.getframeinfo(inspect.currentframe().f_back)[2]

print '{} call me'.format(who)

def a():

foo()

def b():

foo()

a()

b()

a()

结果输出:

a call me

b call me

a call me
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: