Steve Holden <[EMAIL PROTECTED]> wrote: > Absolutely correct. It would be more interesting to discuss how the > output from these statements varied between (say) CPython, Jython and > Iron Python. At the moment the discussion is indeed about insignificant > implementation trivia.
CPython seems to collapse identical float values if they are in the same compilation unit: >>> x = 2. >>> y = 2. >>> x is y False >>> x = 2.; y = 2. >>> x is y True >>> y = [2., 2.] >>> y[0] is y[1] True IronPython doesn't collapse them even when they are in expression: IronPython 1.0.60816 on .NET 2.0.50727.42 Copyright (c) Microsoft Corporation. All rights reserved. >>> x = 2. >>> y = 2. >>> x is y False >>> x = 2.; y = 2. >>> x is y False >>> y = [2., 2.] >>> y[0] is y[1] False JPython seems to behave in a similar manner to CPython: Python command console - JPython 2.1 >>> x = 2. >>> y = 2. >>> x is y 0 >>> x = 2.; y = 2. >>> x is y 1 >>> y = [2., 2.] >>> y[0] is y[1] 1 >>> Sorry, I don't have a more recent Jython implementation to hand to complete the comparison. -- http://mail.python.org/mailman/listinfo/python-list