[Python-Dev] Caching float(0.0)
Terry Reedy
tjreedy at udel.edu
Sun Oct 1 19:54:31 CEST 2006
"Nick Craig-Wood" <nick at craig-wood.com> wrote in message
news:20061001093846.GA20938 at craig-wood.com...
> On Fri, Sep 29, 2006 at 12:03:03PM -0700, Guido van Rossum wrote:
>> I see some confusion in this thread.
>>
>> If a *LITERAL* 0.0 (or any other float literal) is used, you only get
>> one object, no matter how many times it is used.
>
> For some reason that doesn't happen in the interpreter which has been
> confusing the issue slightly...
>
> $ python2.5
>>>> a=0.0
>>>> b=0.0
>>>> id(a), id(b)
> (134737756, 134737772)
Guido said *a* literal (emphasis shifted), reused as in a loop or function
recalled, while you used *a* literal, then *another* literal, without
reuse. Try a=b=0.0 instead.
Terry Jan Reedy
More information about the Python-Dev
mailing list