[Python] copy and id() function

Marco Mariani marco.mariani a prometeia.it
Mar 13 Ott 2009 11:45:19 CEST


Alice Invernizzi wrote:

> print 'id(a):', id(a), 'id(b):', id(b), 'id(c): ',id(c)
> id(a): 9985904 (ok)
> id(b): 9985904 (???)
> id(c): 9985904 (???)
>


Alcuni numeri sono oggetti pre-allocati, pensa ad una cache per gli 
interi di uso comune.

Questo e' in cache:

> >>> a = 23
> >>> a is 23
> True

ma questo no:

> >>> a = 1e10
> >>> a is 1e10
> False
>
> >>> a = 1e10
> >>> b = 1e10
> >>> id(a), id(b)
> (151421668, 151421652)




Maggiori informazioni sulla lista Python