gpt4 book ai didi

python - 获取定义函数的框架对象

转载 作者:行者123 更新时间:2023-12-01 22:57:55 25 4
gpt4 key购买 nike

有没有办法以编程方式找到定义函数的框架?我正在寻找类似函数 get_defining_frame 的东西这将像这样工作:

def foo():
def bar():
pass
return bar

bar = foo()

get_defining_frame(foo) # should be the same as inspect.currentframe()
get_defining_frame(bar) # should be the frame created by the call to foo

谢谢!

最佳答案

每次函数调用都会创建/删除框架。所以当你打电话时:

get_defining_frame(bar)

在您的示例代码中, bar 所在的框架已创建已消失。

函数对象不包含对它们定义的框架的引用。这是一件好事,因为它会阻止所有其他局部变量被释放。

你为什么需要这个?

关于python - 获取定义函数的框架对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9339673/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com