在Python中,多态是通过继承和重写父类方法来实现的。下面是一个简单的例子来说明Python中的多态:
class Animal:def talk(self):passclass Cat(Animal):def talk(self):print("喵喵喵")class Dog(Animal):def talk(self):print("汪汪汪")class Pig(Animal):def talk(self):print("哼哼哼")def animal_talk(animal):animal.talk()cat = Cat()dog = Dog()pig = Pig()animal_talk(cat) 输出:喵喵喵animal_talk(dog) 输出:汪汪汪animal_talk(pig) 输出:哼哼哼
在这个例子中,`Animal` 是一个基类,`Cat`、`Dog` 和 `Pig` 是继承自 `Animal` 的子类。每个子类都重写了 `talk` 方法,以展示不同的行为。`animal_talk` 函数接受一个 `Animal` 类型的参数,并调用其 `talk` 方法。我们可以传入任何 `Animal` 的子类实例,而不需要关心具体是哪个子类的实例,这就是多态的体现。
需要注意的是,Python是一种动态类型语言,它允许在运行时改变对象的类型,但多态的概念依然可以通过继承和方法重写来实现。
另外,从Python 3开始,可以使用 `abc` 模块来定义抽象基类,强制子类实现某些方法,这是实现多态的一种更严格的机制。
希望这能帮助你理解Python中的多态

