python рекурсия
Есть список, который надо проверить. Есть кнопка.
При нажатии на кнопку проваливаемся в button_clicked. Там все работает. При вызове рекурсии (rekursia) программа крашится даже не войдя в нее
def add_functions(self):
self.btn_green_1p.clicked.connect(lambda: self.button_clicked(1))
def rekursia(self,i, j, color):
print("fa")
#color: 1 - green, 2 - red, 3 - yellow, 4 - blue, 5 - black
if table2[i-1][j] == color and i >= 0 :
print("fa1")
print(f'{i}{j}', i, j)
self.rekursia(self, i-1, j, color)
print("fa")
def button_clicked(self, color):
for row in range(30):
for col in range(30):
if table2[row][col] == 1:
print(table2[row][col])
print(row)
print(col)
print(color)
self.rekursia(self, row, col, color)
пробовал self.rekursia(self, lambda: row, lambda: col, lambda: color) не помогло.
Ответы (1 шт):
Автор решения: Menlis Smith
→ Ссылка
Зачем вы передаете self в функцию?
self.rekursia(self, i-1, j, color)
self передастся автоматически, так как класс уже инициализирован
self.rekursia(i-1, j, color)