Python 需要帮助解决Tkinter位置参数错误-创建帧时出错

Python 需要帮助解决Tkinter位置参数错误-创建帧时出错,python,tkinter,Python,Tkinter,我试图在Tkinter中创建一个简单的多项选择题测验。目标是有多个测验类别,每个类别中有多个问题。为此,我尝试使用命名元组,并将其传递给测验类和方法。当我运行该程序时,我得到以下回溯消息: Traceback (most recent call last): File "/home/daniel/pythonfiles/tkquizradio.py", line 124, in <module> app = SimpleTkinter() File "/home/da

我试图在Tkinter中创建一个简单的多项选择题测验。目标是有多个测验类别,每个类别中有多个问题。为此,我尝试使用命名元组,并将其传递给测验类和方法。当我运行该程序时,我得到以下回溯消息:

Traceback (most recent call last):
  File "/home/daniel/pythonfiles/tkquizradio.py", line 124, in <module>
    app = SimpleTkinter()
  File "/home/daniel/pythonfiles/tkquizradio.py", line 31, in __init__
    frame = F(house, self)
TypeError: __init__() takes 2 positional arguments but 3 were given

前两个框架类采用三个参数:

class StartPage(tk.Frame):
    def __init__(self, parent, controller):

class QuizChoice(tk.Frame):
    def __init__(self, parent, controller):
…但最后一个只需要两个:

class MathQuiz(tk.Frame):
    def __init__(self, parent):
\uuuu init\uuuu
方法与任何其他方法一样,它只能接受您声明它要接受的参数。当你试图用这个额外的参数构造一个
mathquick
时,它不知道如何处理它,所以它会抱怨

最小的修复方法是只添加另一个参数,以便与其他类匹配:

class MathQuiz(tk.Frame):
    def __init__(self, parent, controller):

现在它们都有相同的签名,所以它们都可以以相同的方式使用,这样您的代码就可以工作了。您与该
控制器没有任何关系这一事实并不意味着您不能将其作为参数而忽略它。

前两个帧类使用三个参数:

class StartPage(tk.Frame):
    def __init__(self, parent, controller):

class QuizChoice(tk.Frame):
    def __init__(self, parent, controller):
…但最后一个只需要两个:

class MathQuiz(tk.Frame):
    def __init__(self, parent):
\uuuu init\uuuu
方法与任何其他方法一样,它只能接受您声明它要接受的参数。当你试图用这个额外的参数构造一个
mathquick
时,它不知道如何处理它,所以它会抱怨

最小的修复方法是只添加另一个参数,以便与其他类匹配:

class MathQuiz(tk.Frame):
    def __init__(self, parent, controller):
现在它们都有相同的签名,所以它们都可以以相同的方式使用,这样您的代码就可以工作了。与
控制器
无关的事实并不意味着不能将其作为参数而忽略它