Как получить следующее и предыдущее значение в двумерном массиве (основной порядок строк) в Python? - PullRequest
0 голосов
/ 26 сентября 2019

Я работаю над двумя функциями, которые принимают двухмерный массив и текущее значение строки и столбца.Он должен возвращать следующее значение или предыдущее значение (если оно есть), а если его нет, он должен возвращать (-1, -1)

В функциях я называю значение (число)node and nodeSolution - это двумерный массив.

Моя проблема заключается в том, что я продолжаю получать ошибки в своей функции использования, когда использую это для возврата.Я исправляю ошибки, но не могу понять, где мой код работает неправильно.Я получаю много индекса вне диапазона и т. Д.

def nextNode(row, col, nodeSolution):
    if(row == len(nodeSolution) and col == len(nodeSolution)):
        return (-1,-1)
    if(col == len(nodeSolution) - 1):
        return (row+1, 0)
    return (row, col+1)

def previousNode(row, col, nodeSolution):
    if(row == 0 and col == 0):
        return (-1,-1)
    if(col == 0):
        return (row-1, len(nodeSolution) - 1)
    return (row, col-1)

Обе функции всегда должны возвращать строку, значение столбца в массиве 2d или (-1, -1)

...