Запись в переменную класса
Создал класс и метод
class Knight:
def __init__(self, chess_board: list[list[bool]]):
self.chess_board = chess_board
def commandStepTo(self, x: int, y: int) -> bool:
self.x = x
self.y = y
self.chess_board[x][y] = True
print(x, y)
Далее создаю экземпляр класса:
knight = Knight([[False]*8]*8)
Проверяю:
knight.chess_board
output
[[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, 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, False, False, False, False, False, False],
[False, False, False, False, False, False, False, False]]
Далее использую метод
knight.commandStepTo(1,2)
Проверяю, и у меня выводит следующее
[[False, False, True, False, False, False, False, False],
[False, False, True, False, False, False, False, False],
[False, False, True, False, False, False, False, False],
[False, False, True, False, False, False, False, False],
[False, False, True, False, False, False, False, False],
[False, False, True, False, False, False, False, False],
[False, False, True, False, False, False, False, False],
[False, False, True, False, False, False, False, False]]
Почему у меня так записывает? Я ожидаю, что запишется только в ячейку [1][2], а не во весь столбец.