筹备一个动物园; 声明animal类,function1:需要食物;function2:活动范围;function3:动物颜色。function4:统计数量; 声明3个具体动物类,继承animal类,并调用父类同名function设定并输出具体内容。 筹备一个动物园; 声明animal类,function1:需要食物;function2:活动范围;function3:动物颜色。function4:统计数量; 声明3个具体动物类,继承animal类,并调用父类同名function设定并输出具体内容
时间: 2024-02-11 11:03:49 浏览: 110
好的,让我来帮你回答这个问题。
首先,声明一个Animal类,包含需要食物、活动范围、动物颜色和统计数量这4个函数:
```python
class Animal:
def __init__(self):
self.food = ''
self.range = ''
self.color = ''
def need_food(self):
return self.food
def activity_range(self):
return self.range
def animal_color(self):
return self.color
@classmethod
def count_animals(cls, animal_list):
return len(animal_list)
```
接下来,声明3个具体动物类,分别是狮子、大象和长颈鹿。这三个类均继承自Animal类,并调用父类同名函数进行设定和输出具体内容:
```python
class Lion(Animal):
def __init__(self):
super().__init__()
self.food = '肉'
self.range = '草原'
self.color = '黄色'
def roar(self):
print('狮子在咆哮!')
class Elephant(Animal):
def __init__(self):
super().__init__()
self.food = '植物'
self.range = '森林'
self.color = '灰色'
def trumpet(self):
print('大象在吼叫!')
class Giraffe(Animal):
def __init__(self):
super().__init__()
self.food = '植物'
self.range = '草原'
self.color = '黄褐色'
def stretch_neck(self):
print('长颈鹿在伸长脖子!')
```
现在我们就可以创建一个动物园,并将狮子、大象和长颈鹿加入其中:
```python
zoo = []
lion = Lion()
elephant = Elephant()
giraffe = Giraffe()
zoo.append(lion)
zoo.append(elephant)
zoo.append(giraffe)
print('动物园中有', Animal.count_animals(zoo), '种动物:')
for animal in zoo:
print('这种动物需要的食物是', animal.need_food())
print('这种动物的活动范围是', animal.activity_range())
print('这种动物的颜色是', animal.animal_color())
if isinstance(animal, Lion):
animal.roar()
elif isinstance(animal, Elephant):
animal.trumpet()
elif isinstance(animal, Giraffe):
animal.stretch_neck()
print()
```
输出结果如下:
```
动物园中有 3 种动物:
这种动物需要的食物是 肉
这种动物的活动范围是 草原
这种动物的颜色是 黄色
狮子在咆哮!
这种动物需要的食物是 植物
这种动物的活动范围是 森林
这种动物的颜色是 灰色
大象在吼叫!
这种动物需要的食物是 植物
这种动物的活动范围是 草原
这种动物的颜色是 黄褐色
长颈鹿在伸长脖子!
```
希望这个例子能够帮助你理解类和继承的概念。
阅读全文