вызов функции множественного наследования не выполняется в Python - PullRequest
0 голосов
/ 04 мая 2018

Я пытаюсь вызвать функцию множественного наследования в Python, но получаю ошибку

class A:
    def __init__(self):
        self.name = "kiran"
class B:
    def __init__(self):
        self.num = 10
class Merge(A,B):
    def disp(self):
        print self.num

obj_var = Merge()
print obj_var.disp()

ошибка:

Traceback (most recent call last):
  File "test_calss_obj.py", line 12, in <module>
    print obj_var.disp()
  File "test_calss_obj.py", line 9, in disp
    print self.num
AttributeError: Merge instance has no attribute 'num'

Почему возникает эта ошибка, и мне нужен вывод в виде 10

1 Ответ

0 голосов
/ 04 мая 2018

Вам не хватает конструктора для слияния:

class Merge(A, B):
    def __init__(self):
       A.__init__(self)
       B.__init__(self)
    def disp(self):
        print self.num
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...