【问题标题】:shufler() takes exactly 1 positional argument (2 given)shufler() 正好采用 1 个位置参数(给定 2 个)
【发布时间】:2012-10-11 17:39:57
【问题描述】:

下面是我的代码。

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)

我不明白我在哪里给出了 2 个参数。

【问题讨论】:

    标签: python python-3.x


    【解决方案1】:
    self.shufler(10)
    

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

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

    def shufler(self, count):
    

    【讨论】:

    • @zoe,这在 S.O. 中被认为是礼貌的。将回答您问题的问题标记为“已接受”。有一个褪色的复选框,只有您可以看到它表明它已被接受。
    • 是的,我会在 2 分钟内接受它。该网站还不允许我这样做。猜你回答太快了:P
    猜你喜欢
    • 2016-01-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-06
    • 1970-01-01
    • 2012-07-02
    • 1970-01-01
    • 2013-10-29
    相关资源
    最近更新 更多