python1.1.简要创建一个多态
时间: 2023-08-24 08:10:01 浏览: 59
在 Python 中,多态是一种对象的行为,它允许同一种类型的不同对象具有不同的实现方式。要创建一个多态,可以使用继承和方法重写。
下面是一个简单的示例,使用继承和方法重写来创建一个多态:
```python
class Animal:
def __init__(self, name):
self.name = name
def speak(self):
pass
class Dog(Animal):
def speak(self):
return "Woof!"
class Cat(Animal):
def speak(self):
return "Meow!"
def animal_speak(animal):
return animal.speak()
dog = Dog("Fido")
cat = Cat("Whiskers")
print(animal_speak(dog)) # Output: "Woof!"
print(animal_speak(cat)) # Output: "Meow!"
```
在这个示例中,我们定义了一个基类 `Animal`,和两个派生类 `Dog` 和 `Cat`。每个派生类都重写了基类的 `speak` 方法,以实现自己的行为。我们还定义了一个函数 `animal_speak`,它接受一个 `Animal` 类型的参数并调用它的 `speak` 方法。当我们将 `dog` 和 `cat` 对象传递给 `animal_speak` 函数时,它们会根据自己的实现方式响应。这就是多态的体现。
相关推荐
![pptx](https://img-home.csdnimg.cn/images/20210720083543.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)