On Jun 20, 12:31 pm, [EMAIL PROTECTED] wrote: > I am not certain why this is the case, but... > > >>> a = 256 > >>> b = 256 > >>> a is b > > True > > >>> a = 257 > >>> b = 257 > >>> a is b > > False > > Can anyone explain this further? Why does it happen? 8-bit integer > differences?
No, implementation-dependent optimization (caching). For all we know, the next python version may cache up to 1024 or it may turn off caching completely; do not rely on it. More generally, do not use 'is' when you really mean '=='. George -- http://mail.python.org/mailman/listinfo/python-list