What exactly are bound methods?
Erik Max Francis
max at alcyone.com
Sun Nov 23 22:33:22 EST 2003
More information about the Python-list mailing list
Sun Nov 23 22:33:22 EST 2003
- Previous message (by thread): What exactly are bound methods?
- Next message (by thread): What exactly are bound methods?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Kylotan wrote: > > Although I see lots of references to them in various documentation, I > can't find a decent explanation of exactly what they are. I'm guessing > that it's a reference to a method that remembers which object it came > from, and that when it's called, it passes that object as the first > parameter (which would conventionally be 'self'). Is this correct? Yep: >>> class C: ... def f(self, x): ... print x ... >>> c = C() # c is an instance of C >>> C <class __main__.C at 0x402e141c> >>> C.f # the unbound method <unbound method C.f> >>> c.f # the bound method <bound method C.f of <__main__.C instance at 0x402e4c8c>> >>> C.f(c, 1) # invoking unbound methods requires passing the instance 1 >>> c.f(1) # bound methods already contain the instance 1 -- Erik Max Francis && max at alcyone.com && http://www.alcyone.com/max/ __ San Jose, CA, USA && 37 20 N 121 53 W && &tSftDotIotE / \ \__/ There are defeats more triumphant than victories. -- Montaigne
- Previous message (by thread): What exactly are bound methods?
- Next message (by thread): What exactly are bound methods?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list