Passing a method indirectly
andre.roberge at gmail.com
Sun Mar 5 01:04:01 CET 2006
> I'm trying to write a function that takes an arbitrary object and
> The function applies the method to the object (and some other stuff).
> I get error "Test instance has no attribute 'method' "
> How can I make this work?
> def ObjApply (object,method):
> object.method ()
> class Test:
> def test1 (self): print "Hello"
> def test2 (self):
> ObjApply (self,self.test1)
> ta = Test ()
> ta.test2 ()
You need to add one line (2nd one below).
def ObjApply (object, method):
object.method = method
def test1 (self): print "Hello"
def test2 (self):
ObjApply (self, self.test1)
ta = Test ()
More information about the Python-list