Well, could some kind soul please explain to me why the following trivial code is misbehaving?
#!/usr/bin/python s = [] l = [ 0 ] r = [0, 0] while r: x = (l,r) print x s.append( x ) l.append( r.pop(0) ) print s The output I get is: ([0], [0, 0]) ([0, 0], [0]) [([0, 0, 0], []), ([0, 0, 0], [])] and the error is in the last line: the two pairs in the outer list are identical and they should be equal to the pairs one the first and the 2nd line, respectively! Shouldn't they? I think I'm going nuts -- for the life of me I don't see what's going on ... Thanks a lot in advance for any insights, etc. Best regards, Gabriel. -- http://mail.python.org/mailman/listinfo/python-list