在下面示例中,PetDog的属性owner是一个Owner类的实例:
class Animal:
"""动物类"""
def __init__(self, name, age):
"""初始化描述动物的属性"""
self.name = name
self.age = age
def get_description(self):
"""构造描述信息"""
full_description = f"{self.name.title()}'s age is {self.age}."
return full_description
class Owner:
"""主人类"""
def __init__(self, owner_name="thb"):
"""初始化主人的属性"""
self.owner_name = owner_name
def describe_owner(self):
"""打印一条描述主人的信息"""
print(f"The owner is {self.owner_name.title()}")
class PetDog(Animal):
"""宠物狗"""
def __init__(self, name, age):
"""初始化父类的属性。
再初始化宠物狗特有的属性
"""
super().__init__(name, age)
self.owner = Owner()
# 创建一个宠物狗的实例
pet_dog = PetDog('Shiwu', 3)
print(pet_dog.get_description())
pet_dog.owner.describe_owner()
运行输出: