擅长:python、mysql、java
<p>这里是一个快速的黑客,得到堆栈和从最后一帧获得本地访问self</p>
<pre><code>class A:
def callFunction(self, obj):
obj.otherFunction()
class B:
def callFunction(self, obj):
obj.otherFunction()
import inspect
class C:
def otherFunction(self):
lastFrame = inspect.stack()[1][0]
print lastFrame.f_locals['self'], "called me :)"
c = C()
A().callFunction(c)
B().callFunction(c)
</code></pre>
<p>输出:</p>
^{pr2}$