我正在做一些家庭作业,我好像也在什么地方搞砸了。无效语法出现在第8行,我假设这是缩进问题。有没有办法在不重写的情况下纠正这个问题
def solve(puzzle,row=0,col=0):
if puzzle[row][col]>0:
next_row,next_col=get_next(puzzle,row,col)
if next_row is None:
return puzzle
else:
solve(puzzle,next_row,next_col)
else: # line 8
options=get_options(puzzle,row,col)
if not options:
return None
else:
for i in options:
new_puzzle=copy_puzzle(puzzle)
new_puzzle[row][col]=i
result=solve(new_puzzle)
if result is not None:
return result
第二个{{CD1>}应该结束递归的这个分支,导致函数回溯并考虑先前填充的单元格的不同值。
不能将else语句放在具有相同缩进的另一个else语句之后。 只能在if或elif之后编写else语句
正确答案似乎是:
您的代码可能如下所示:
相关问题 更多 >
编程相关推荐