Luc*_*hez 7 python oop function
在Smalltalk中,有一条消息DoesNotUnderstand
在对象不理解消息时被调用(这是当对象没有发送消息时).
所以,我想知道在python中是否有一个函数可以做同样的事情.
在这个例子中:
class MyObject:
def __init__(self):
print "MyObject created"
anObject = MyObject() # prints: MyObject created
anObject.DoSomething() # raise an Exception
Run Code Online (Sandbox Code Playgroud)
那么,我可以添加一个方法,MyObject
以便知道何时DoSomething
被调用?
PS:抱歉我的英语不好.
以下是您想要做的事情:
class callee:
def __init__(self, name):
self.name = name
def __call__(self):
print self.name, "has been called"
class A:
def __getattr__(self, attr):
return callee(attr)
a = A()
a.DoSomething()
>>> DoSomething has been called
Run Code Online (Sandbox Code Playgroud)