shufler()只取1个位置参数(给定2个)

时间:2012-10-11 17:39:58

标签: python python-3.x

以下是我的代码。

def __init__(self):
    self.node=[]
    self.fronts=[]
    self.GoalNode=['1','2','3','4','5','6','7','8','0']
    self.StartNode=['1','2','3','4','5','6','7','8','0']
    self.PreviousNode=[]
    self.prePreviousNode=[]
    self.PreviousCount=1

def Solve(self):
    self.shufler(10)
    ......


def shufler(self):

        while True:
            node=self.StartNode

以下是我收到的错误消息:

File "E:\Zoe's file\CMPT 310\Assign 2\astart8puzzle\AI8puzzle\py8puzzel.py", line 18, in Solve
    self.shufler(10)
TypeError: shufler() takes exactly 1 positional argument (2 given)

我不明白我给出了两个论点。

1 个答案:

答案 0 :(得分:8)

self.shufler(10)

这会使用两个参数调用shufler,(1)self和(2)10.左侧的对象用作第一个参数。

要处理10参数,请在shufler的定义中添加第二个参数:

def shufler(self, count):