用途:
- 获取当前代码、上级代码方法名
- 获取当前代码、上级代码modole名称
代码如下:
def v2():
print inspect.stack()
def v1():
v2()
def main():
v1()
if __name__ == "__main__":
main()
打印结果:
[(, ‘D:\testme.py’, 26, ‘v2’, [’ print inspect.stack()\n’], 0),
(, ‘D:\testme.py’, 30, ‘v1’, [’ v2()\n’], 0),
(, ‘D:\testme.py’, 36, ‘main’, [’ v1()\n’], 0),
(, ‘D:\testme.py’, 39, ‘’, [’ main()\n’], 0)]
可以看出:
返回结果是一个tuple数组,每个tuple对象是一个调用层级,这个数组存储了递归调用关系,下标为0是最里层。
每个tuple对象包含调用当前module名,方法名,当前语句;
–end
本文详细解析了如何使用Python内置模块`inspect`获取当前代码及其上级代码的方法名和模块名称,通过示例展示了如何打印调用层级,并解读了返回结果的结构。

328

被折叠的 条评论
为什么被折叠?



