Yuval Greenfield <ubershme...@gmail.com> added the comment:

This isn't a bug and should be closed. It's more of a stack overflow question.

If you'd like to change this fundamental behavior of a very common operation in 
python you should make a proposal to the python ideas mailing list at 
http://mail.python.org/mailman/listinfo/python-ideas

In your example board_2 is equivalent to:

    row = [0] * N
    board_2 = row * N

All the rows are the same initial row. As opposed to board_1 where each row is 
a new row.

Try this:

    [id(i) for i in board_2]

The initial equivalence is because they do represent the same values (NxN list 
of all zeroes). What should python compare if not by values?

----------
nosy: +ubershmekel

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue14719>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to