我是python
的新手,并提出了一个非常基本的问题。我试图理解多重继承。我有两个父类,即Speciy和Living,一个子类Bird,但是当我运行以下程序时,出现错误'Bird' object has no attribute '_Living__house'
。请告诉我我做错了
但是当我使用单一继承时,即类Bird(Speciy) or class Bird(Living)
,它可以正常工作。因此,当我使用多重继承时,只会出现错误
class Speciy:
def __init__(self,legs=4,colour="White"):
self.__legs=legs
self.__colour=colour
def get_legs(self):
return self.__legs
def set_legs(self,legs):
self.__legs=legs
def get_colour(self):
return self.__colour
def set_colour(self,colour):
self.__colour=colour
class Living:
def __init__(self,house="city"):
self.__house=house
def get_house(self):
return self.__house
def set_house(self,house):
self.__house=house
class Bird(Speciy,Living):
def __init__(self,wings=2):
super().__init__()
super().__init__()
self.__wings=wings
def get_wings(self):
return self.__wings
def set_wings(self,wings):
self.__wings=wings
b1=Bird(4)
print(b1.get_wings())
b1.set_colour("Green")
print(b1.get_colour())
print(b1.get_house())
答案 0 :(得分:0)
我已经使用
解决了自己的问题Speciy.__init__(self,legs,colour)
Living.__init__(self,house)