0

I'm creating for example a list of list variables. WHen I changed the one value, the whole column changed as well

data = [[False] * 5] * 5
data
[[False, False, False, False, False],
 [False, False, False, False, False],
 [False, False, False, False, False],
 [False, False, False, False, False],
 [False, False, False, False, False]]

data[3][4] = True
data
[[False, False, False, False, True],
 [False, False, False, False, True],
 [False, False, False, False, True],
 [False, False, False, False, True],
 [False, False, False, False, True]]

Same happened if it is a numerical variable. why does this happen??

U12-Forward
  • 65,118
  • 12
  • 70
  • 89
ayy
  • 149
  • 1
  • 8

1 Answers1

-1

oh i got it myself.....when i make data as = [] * 5, i am shallow copying them and thus change one changed all rows.

ayy
  • 149
  • 1
  • 8