申し訳ありません。私は新しいです。なぜ、私は基本クラスを継承しているのですか? 'AttributeError'はなぜですか?
class A(object):
def __init__(self, idn, name):
self.idn = idn
self.name = name
class B(object):
def __init__(self, idn, acc_no, criminal_case='No'):
self.idn = idn
self.acc_no = acc_no
self.criminal_case = criminal_case
def get_info(self):
return self.idn
class C(A, B):
pass
c = C(1, 'xyz')
print c.get_info()
print c.criminal_case
トレースバック(最後の最新の呼び出し):
ファイル "tp.py"、25行、
印刷c.criminal_case
はAttributeErrorで: 'C' オブジェクトが持っているなし属性 'criminal_case'
あなたは 'super'を呼び出す必要があります。しかし、あなたの継承構造はあまり意味がありません。 'B .__ init__'はどこで引数を取ると思いますか? 'C 'には2つしか渡しません。 2番目は 'name'か' acc_no'でしょうか? – BrenBarn
大丈夫です!しかし、Cの中でBのinitをどのように呼び出すのですか? –