Another of those "is" issues.
Scott David Daniels
Scott.Daniels at Acm.Org
Fri Mar 20 14:47:53 EDT 2009
Emanuele D'Arrigo wrote:
> Hi everybody, ...
>>>> f = aFunction
>>>> f is aFunction
> True <--- Ok, this seems reasonable. Nevertheless, I suspect I
> shouldn't quite rely on it.
Actually, that's fine, you are simply comparing a pair of references
>>>> class MyClass(object):
> ... def myMethod(self):
> ... pass
>>>> c = MyClass()
>>>> m = c.myMethod
>>>> m is c.myMethod
> False <--- What? Why is that?
Method access binds the instance in dynamically.
Comparing m is c.myMethod
is like comparing m is partial(MyClass.method, c)
--Scott David Daniels
Scott.Daniels at Acm.Org
More information about the Python-list
mailing list