On Friday, Aug 24th 2007 at 09:12 -0700, quoth [EMAIL PROTECTED]: =>On Aug 24, 11:02 am, "Steven W. Orr" <[EMAIL PROTECTED]> wrote: =>> In the program below, I want this instance to end up calling repmeth =>> whenever inst.m1 is called. As it is now, I get this error: =>> =>> Hello from init =>> inst = <__main__.CC instance at 0x402105ec> =>> Traceback (most recent call last): =>> File "./foo9.py", line 17, in ? =>> inst.m1() =>> TypeError: repmeth() takes exactly 1 argument (0 given) =>> =>> #! /usr/bin/python =>> def repmeth( self ): =>> print "repmeth" =>> =>> class CC: =>> def __init__( self ): =>> self.m1 = repmeth =>> print 'Hello from init' =>> =>> def m1 ( self ): =>> print "m1" =>> =>> inst = CC() =>> inst.m1()
=>Remove "self" from repmeth as it's not required in a function, only in =>functions that are defined within a class. Of course, a function in a =>class is also know as a method. Sorry. I need repmeth to have self passed to it automatically if it's called. I didn't mean to obfuscate the problem by not making a reference to self in repmeth. Am I being clear? -- Time flies like the wind. Fruit flies like a banana. Stranger things have .0. happened but none stranger than this. Does your driver's license say Organ ..0 Donor?Black holes are where God divided by zero. Listen to me! We are all- 000 individuals! What if this weren't a hypothetical question? steveo at syslang.net -- http://mail.python.org/mailman/listinfo/python-list