【发布时间】:2020-11-16 10:59:38
【问题描述】:
我有以下场景,我想在我的范围之上获取范围的框架信息。
def outer():
# This is really slow.
frames = inspect.stack()
def inner():
# I would like to "pay for it" here instead.
print(frames)
return inner
调用inspect.stack() 很慢,所以我想只在真正需要时才这样做,即当有人调用inner 时。但是如果我将它移到内部函数中,我会得到与我需要的不同的帧。
或者,如果我可以得到所有的 frame.filename 和 frame.lineno,(对于每个 frame 用于外部范围),以其他方式快速 - 这也很好。
【问题讨论】:
标签: python higher-order-functions inspect