获取调用者类在Python中

2 投票
1 回答
1591 浏览
提问于 2025-04-17 23:47

我有一个类在调用另一个类的函数,像这样:

self.pool.get('some_value')

我该如何在这个获取函数里面得到调用者的类呢?

谢谢!

1 个回答

6

你可以通过 inspect 来实现这个功能。get() 函数的内容可以是:

import inspect
myCaller = inspect.currentframe().f_back.f_locals['self']

之后,你就可以通过 myCaller 来引用调用者的实例。

注意:这样做不是一个好的做法,因为这破坏了封装的意义。

撰写回答