파이썬에서 재귀 함수를 작성하려고하지만 정수 유형을 리턴하는 대신 비 유형을 리턴합니다. 나는 거기에 다른 질문이 있지만 거기에 하나의 해결책이 나를 위해 일한 것은 아니라는 것을 압니다. 그것의 모든 경우에 return
을 사용하기 때문에, 옳은 일을하고있다 (이 편집 질문에 나타나는)파이썬에서 인수로 재귀 호출하기
class t:
def search(self, globina, board):
board.legals = board.legal()
bestMove = 0
if(globina == 0):
return board.evaluation()
elif board.turn == False:
bestMove = -9999
for i in range(0, len(board.legals)):
board.move(board.legals[i])
board.display()
bestMove = max(bestMove, self.search(globina-1, board))
board.undo()
return bestMove
else:
bestMove = 9999
for i in range(0, len(board.legals)):
board.move(board.legals[i])
board.display()
bestMove = min(bestMove, self.search(globina-1, board))
board.undo()
return bestMove
z = t()
z.search(globina, board)
이 코드는 심지어 'IndentationError'를 실행하지 않습니다. –
globina! = 0이면 아무 것도 반환하지 않을 가능성이 높습니다. –
@AmitTripathi 제 생각에 그는 질문에서 올바르게 생성하지 않았다고 생각합니다. 어쩌면 그는 편집장에게 출력물을 얻었 기 때문에 편집자가 적절하게 처리했을 수도 있습니다. –