在python super()中,这是什么意思。\uuu init_u(**kwargs)

2024-10-01 15:29:11 发布

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

我知道super是用来调用超类中的init方法的,我很难理解它需要什么样的kwargs我知道它需要关键参数

它在这里做什么?在

class LoginScreen(GridLayout):

    def __init__(self, **kwargs):
        super().__init__(**kwargs)
        self.cols = 2
        self.add_widget(Label(text = "Username: "))
        self.username = TextInput(multiline = False)
        self.add_widget(self.username)

        self.add_widget(Label(text="Password: "))
        self.username = TextInput(multiline=False, password=True)
        self.add_widget(self.username)

        self.add_widget(Label(text="Two Factor Auth: "))
        self.tffa = TextInput(multiline=False, password=True)
        self.add_widget(self.tffa)

Tags: textselfaddfalsetrueinitusernamepassword
1条回答
网友
1楼 · 发布于 2024-10-01 15:29:11

def __init__(self, **kwargs):将对__init__的任何给定调用中使用的所有关键字参数打包到dict中,super().__init__(**kwargs)再次将它们扩展为关键字参数。它就像是函数参数的通配符。给子类提供与父类相同的参数签名,而无需再次输入所有可能的关键字参数,这可能是一种懒散的方式。把它们当成一团,铲到父母那里去弄清楚。在

相关问题 更多 >

    热门问题