Python封装了类的数据

时间:2018-05-21 09:47:53

标签: python

我有两个python类,A和B继承自A. 在运行时,我只有一个A类实例,但有很多B类实例。

/

这是写它的好方法吗?这看起来很难看......

1 个答案:

答案 0 :(得分:0)

最好删除init2并仅使用__init__。两者都令人困惑和不自然。

class A:
  def __init__(self, obj):
    # I believe that this is what you tried to achieve
    if isinstance(obj, type(self)):
        self.a = obj.a    
    else:
        self.a = obj

class B(A):
  def __init__(self, A, b):
    super().__init__(A)
    self.b = b

另一方面,这里有太多名为A的东西。 A中的def __init__(self, A, b):很可能不是指您期望的A