在 Python 中检索调用者的方法名称
在处理多级函数调用时,访问方法名称会很有用调用方法。这可以在被调用的方法中提供有价值的上下文。本文探讨了如何在 Python 中检索调用者的方法名称,避免对调用者方法进行任何修改。
利用 Inspect
Python 检查模块提供了几个用于访问的函数有关呼叫者的信息。 spect.getframeinfo() 和相关函数使我们能够导航帧堆栈并检索相关信息。
实现
下面是如何使用检查的演示:
import inspect def f1(): f2() def f2(): curframe = inspect.currentframe() calframe = inspect.getouterframes(curframe, 2) print('caller name:', calframe[1][3]) f1()
在此示例中,使用 calframe 变量在 f2 函数中检索调用者姓名。 calframe1 的值包含调用者的名称(在本例中为 f1)。
注意
需要注意的是,内省虽然对于调试和开发很有用,不应依赖于与生产相关的目的。其结果可能会受到多种因素的影响,在关键情况下应谨慎对待。
以上是如何在Python中检索调用者的方法名称而不修改调用者方法?的详细内容。更多信息请关注PHP中文网其他相关文章!