用python些程序:现在养狗的人越来越多。狗的主人都会给自己的狗起一个名字, 每一条狗都有年龄, 每一条狗都会跑( run), 会叫(bark)。设计一个 Dog类,完成对狗的抽象和封装。
时间: 2024-12-25 14:30:53 浏览: 4
当然可以,我们可以创建一个名为`Dog`的Python类来模拟这种场景:
```python
class Dog:
def __init__(self, name, age):
"""
初始化函数,设置狗狗的基本信息
"""
self.name = name
self.age = age
# 定义行为能力
self.run = lambda: f"{self.name}正在跑步。"
self.bark = lambda: f"{self.name}正在吠叫。"
def introduction(self):
"""
展示狗狗的信息
"""
print(f"这是我的狗狗{self.name},它今年{self.age}岁。")
def perform_action(self, action):
"""
根据动作名执行相应的行为
"""
if action in ["run", "bark"]:
print(self.__getattribute__(action)())
else:
print(f"{self.name}不知道如何执行'{action}'这个动作。")
# 示例
fido = Dog("Fido", 3)
fido.introduction()
fido.perform_action("run")
fido.perform_action("bark")
```
在这个`Dog`类中,我们定义了狗的名字、年龄作为私有属性,并通过lambda表达式实现了`run`和`bark`方法。`introduction`方法展示了基本信息,`perform_action`方法允许执行指定的动作,如“跑”或“叫”。
阅读全文