如何从具有__init__的类继承并获取输入参数

时间:2018-05-14 19:43:12

标签: python python-3.x

我有两个课程如下:

class Buttons():
  def __init__(self, dDict):  
    self.TCT = Tool()
    self.dDict = dDict

  def btnName(self):
    # I will use both self.TCT and self.dDict here
    a = self.dDict['setup']

class Switch(Buttons):
  def __init__(self):
    self.TCT =Tool()

我需要实例化Switch类,但我需要提供dDict,以便Buttons类具有它正在寻找的数据。实例化类Switch的正确方法是什么?

1 个答案:

答案 0 :(得分:2)

您可以从父类继承__init__,如下所示:

class Switch(Buttons):
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)

        # Followed by init code that is used by Switch

这也意味着您不需要在新self.TCT =Tool()中重复__init__

然后您可以安全地致电

switch = Switch(mydict)