代码之家  ›  专栏  ›  技术社区  ›  Jim Jeffries

Python属性和继承

  •  1
  • Jim Jeffries  · 技术社区  · 15 年前

    class Class1(object):
    
        def __init__(self):
            self.my_attr = 1
            self.my_other_attr = 2
    
    class Class2(Class1):
    
        def __init__(self):
            super(Class1,self).__init__()
    

    2 回复  |  直到 15 年前
        1
  •  10
  •   nikow    15 年前

    你曾经 super 错了,改成

    super(Class2, self).__init__()
    

    基本上是你说的 super 在上面 Class1 然后呢 __init__ 方法从未被调用。

        2
  •  4
  •   detly    15 年前

    因为你在付出 super

    class Class2(Class1):
    
        def __init__(self):
            super(Class2,self).__init__()