id(a) == id(b) and a is not b --> bug?
Bengt Richter
bokr at oz.net
Fri Jun 6 17:18:23 EDT 2003
On 6 Jun 2003 20:43:39 GMT, bokr at oz.net (Bengt Richter) wrote:
>On Fri, 6 Jun 2003 13:51:15 +0000 (UTC), Joshua Marshall <joshway_without_spam at myway.com> wrote:
>
>>Steve McAllister <nosp at m.needed> wrote:
>>>> If any kind of computation is performed in the arguments, the property
>>>> you assume may not hold.
>>
>>> And exactly why is {
>>> 'foo' is 'foo' is 'foo' is 'foo'
>>> } always true? This is quite surprising compared to {
>>> [] is []
>>> } ...
>>> Why are not new string literals dynamically created?
>>
>>Strings are immutable, so the interpreter is free to use these strings
>>in multiple places. It's an optimization--it would also be correct if
>>"'foo' is 'foo'" were false.
>For some meaning of "correct." IWT old-style string exceptions would break.
>
I would have thought wrong ;-/ Just tried it. Note to self: test before posting ;-/
Regards,
Bengt Richter
More information about the Python-list
mailing list