调用时未定义函数

2024-09-29 23:18:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个函数,它返回一个我想在另一个函数中使用的列表,当我调用该函数时,它会说它没有定义,我的代码或调用方法是否有问题?你知道吗

这是我返回列表的函数。你知道吗

def KingMoves(self, rows, columns):
    FinalMove = []
    FinalMove.append(((rows - 1),(columns))) # (left 1)
    FinalMove.append(((rows + 1),(columns))) # (right 1)
    FinalMove.append(((columns + 1),(rows))) # (up 1)
    FinalMove.append(((row + 1),(columns + 1))) # (right 1) (up 1) -- Diagonals for king only
    FinalMove.append(((row - 1),(columns + 1))) # (left 1)(up 1)
    FinalMove.append(((row + 1),(columns - 1))) # (right 1)(down 1)
    FinalMove.append(((row - 1),(columns - 1))) # (left 1)(down 1)

    return FinalMove;

这就是我尝试使用列表返回列表的地方。你知道吗

def UserInput(self):

    global AllPieces

    TheKingMoves = KingMoves()

    OnGoing = True

这是我收到的错误:

NameError: name 'KingMoves' is not defined

我试着通过Kingmoves的参数测试,但得到了相同的结果


Tags: columns函数selfright列表定义defleft
1条回答
网友
1楼 · 发布于 2024-09-29 23:18:20

你需要打电话给TheKingMoves = self.KingMoves(rows, cols)。你知道吗

调用self.KingMoves()将引发错误,因为KingMoves需要您尚未提供的位置参数。你知道吗

另外,在进一步学习python之前,请阅读python style guide。它将帮助人们在将来更快地理解您的代码。你知道吗

相关问题 更多 >

    热门问题