Python TypeError:object.\uuuu init\uuuuuuuu()只接受一个参数(要初始化的实例)

Python TypeError:object.\uuuu init\uuuuuuuu()只接受一个参数(要初始化的实例),python,kivy,Python,Kivy,我正在尝试制作表单应用程序,但我不理解错误: TypeError: object.__init__() takes exactly one argument (the instance to initialize) 代码在这里 class Myapp(App): def build(self): return Grid1() class Grid1(GridLayout): def __init__(self,**kwargs): super(

我正在尝试制作表单应用程序,但我不理解错误:

TypeError: object.__init__() takes exactly one argument (the instance to initialize)
代码在这里

class Myapp(App):
    def build(self):
        return Grid1()

class Grid1(GridLayout):
    def __init__(self,**kwargs):
        super(Grid1,self).__init__(**kwargs)
        self.cols=1

        self.inside=GridLayout()
        self.inside.cols=2

        self.inside.add_widget(Label(text="Your name is :"))
        self.name=TextInput(multiline=False)
        self.inside.add_widget(self.name)


        self.inside.add_widget(Label(text="Your Last name is :"))
        self.lastname=TextInput(multiline=False)
        self.inside.add_widget(self.lastname)


        self.inside.add_widget(Label(text="Your email is :"))
        self.email=TextInput(multiline=False)
        self.inside.add_widget(self.email)

        self.submit=Button(text="Submit",font=40)
        self.add_widget(self.submit)

if __name__=="__main__":
    Myapp().run()
错误 Myapp().run()中第38行的文件“\kivyprima.py” 文件“C:\Users\Alex\AppData\Local\Programs\Python\Python37\lib\site packages\kivy\app.py”,第829行,在run root=self.build()中 文件“\kivyprima.py”,第10行,内建返回Grid1() 文件“\kivyprima.py”,第34行,在init self.submit=按钮中(text=“submit”,font=40) 文件“C:\Users\Alex\AppData\Local\Programs\Python\37\lib\site packages\kivy\uix\behaviors\button.py”,第121行,在init中
好的,所以在
超级(Grid1,self)语句中,错误实际上是而不是。\uuu init\uugs(**kwargs)
语句,它在创建提交按钮时出现。你做到了:

self.submit = Button(text="Submit", font=40)
self.add_widget(self.submit)
但正如所说,字体大小是由
字体大小设置的,而不是
字体设置的。代码应为:

self.submit = Button(text="Submit", font_size=40)
self.add_widget(self.submit)
这应该很好用

编辑 我只想感谢@chepner指出这一点:


请注意,问题在于字体,而不是用户识别的字体 按钮(或其他任何人)只是简单地向上传递链,直到 最终传递给
对象。\uuuu init\uuuuu
(这会引发错误) 简单地忽略意外的参数)


return Grid1()
这里应该传递关键字参数吗?@OlvinRoght否,
**kwargs
完全无效optional@AlexOnel提供全部stacktrace@DeepSpace,是的,我忘了在Myapp().run()文件第38行的question.File“\kivyprima.py”末尾打问号“C:\Users\Alex\AppData\Local\Programs\Python37\lib\site packages\kivy\app.py”,第829行,在run root=self.build()文件中“\kivyprima.py”,第10行,在build return Grid1()文件中“\kivyprima.py”,第34行,在init self.submit=按钮(text=“submit”,font=40)文件中”C:\Users\Alex\AppData\Local\Programs\Python37\lib\site packages\kivy\uix\behaviors\button.py”,在init中的第121行注意,问题是
font
,按钮(或任何其他人)无法识别,只需沿着链向上传递,直到最终传递给
对象(这会引发错误,而不是简单地忽略意外参数)。
self.submit = Button(text="Submit", font_size=40)
self.add_widget(self.submit)