python функция возвращает None, даже если код работает правильно - PullRequest
0 голосов
/ 11 марта 2020

Вот функция решения, которая решает головоломку судоку:

def solve(grid):
    for y in range(9):
        for x in range(9):
            if grid[y][x]==0:
                for n in range(1,10):
                    if possible(grid,y,x,n):
                        grid[y][x]=n
                        solve(grid)
                        grid[y][x]=0
                return
    print(np.matrix(grid))
    return grid

Когда вызывается функция решения, она берет матричную головоломку 9 * 9 и печатает решенную головоломку.

Функция работает правильно, и головоломка печатается правильно. Но вместо того, чтобы напечатать головоломку, я хочу, чтобы функция возвращала матрицу сетки и возвращала переменную, подобную этой:

solved_grid=solve(grid)

Вместо того, чтобы возвращать сетку, функция решения возвращает None.

Kindly советовать. Заранее спасибо

1 Ответ

0 голосов
/ 11 марта 2020

Это потому, что после вашего третьего l oop у вас есть возврат, который ничего не возвращает, но и прекращает выполнение программы.

...