[Python-Dev] Int FutureWarnings and other 2.4 TODOs

Thomas Heller theller at python.net
Fri Dec 5 10:37:10 EST 2003

Guido van Rossum <guido at python.org> writes:

>> IIUC, doing range(10000000) in a program somewhere allocates 10 million
>> integers, and these are *never* freed, they live in the cache forever.
>> Correct?
> Wrong.  The memory allocated can never be used for other objects than
> ints, but it will be reused for other ints.  IOW if you do
>   for i in range(100):
>       range(i*1000000, (i+1)*1000000)
> you only allocate space for 1000000 ints, not for 100 times 1000000
> ints.  (The range(100) OTOH are all in a cache that make the objects
> indestructible, but this only applies to values in [-5, 100).

Ok, then it makes sense.  Thanks for the clarification.


More information about the Python-Dev mailing list