Мой код:
matrix = []
dynamicmatrix = []
answers = []
...some other code...
def search(chartofind, row):
global dynamicmatrix
print("SEARCHING", chartofind, row)
if row == numberofrows:
toadd = dynamicmatrix.copy()
answers.append(toadd)
return
for col in range(0, numberofrows):
if canPlace(chartofind, row, col) == False and matrix[row][col] != chartofind:
continue
if matrix[row][col] == chartofind:
search(chartofind, row+1)
else:
dynamicmatrix[row][col] = chartofind
search(chartofind, row+1)
dynamicmatrix[row][col] = matrix[row][col]
search("A", 0)
for i in answers:
print(i)
Проблема в том, что когда я печатаю toadd в рекурсии, это нормально.Однако после просмотра списка он был добавлен; ответы , оно показывает значение, отличное от того, которое было показано при добавлении его в список.Значение внутри рекурсии было правильным, но после рекурсии весь список ответов разрушен.Что может быть причиной этого?Это сводит меня с ума, любая помощь будет оценена.