[EMAIL PROTECTED] schrieb:
> Hello,
> 
> I am testing object identity.
> 
> If I do it from the interpreter, I get strange results.
> 
>>>> print [] is []
> False
> 
>>>> print id([]), id([])
> 3083942700 3083942700
> 
> 
> 
> Why is that? Isn't this an error?

No, it's not an error. You are getting this result because the list
implementation keeps a bunch of unused list objects in a free list. It's
an optimization trick. Python has to create two different list objects
for "[] is []" while it can reuse the same list object for id([]) == id([]).

Christian

--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to