Python - Изменение элемента двумерного массива
Существует двумерный массив table длины и высоты 4 (это не так важно)
[
[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 0, 0]
]
Я хочу изменить значения элемента с координатами x = 0 и y = 0.
def testCell( self, x, y ):
if 0 <= x < self.N and 0 <= y < self.N :
self.table[x][y] = 1
Однако, вместо массива
[
[1, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 0, 0]
]
Я получаю
[
[1, 0, 0, 0],
[1, 0, 0, 0],
[1, 0, 0, 0],
[1, 0, 0, 0]
]
Как правильно изменять значение элемента в двумерном массиве?
Ответы (1 шт):
Автор решения: Sergey Gornostaev
→ Ссылка
У в поле table хранится ссылка на список, содержащий 4 ссылки на один другой список. Создавайте матрицу лучше так: [[0 for x in range(self.N)] for y in range(self.N)]