Python 中的虛函數可以通過抽象基類實現。抽象基類是一種不能被實例化的類,主要用于定義接口和規范子類的行為。
定義一個抽象基類需要使用 ABCMeta 和 abstractmethod 兩個裝飾器。其中 ABCMeta 是 Python 的元類,用來指定一個類為抽象基類;abstractmethod 裝飾器用來指定一個方法為抽象方法。
from abc import ABCMeta, abstractmethod class Animal(metaclass=ABCMeta): @abstractmethod def make_sound(self): pass class Cat(Animal): def make_sound(self): print('喵喵喵') class Dog(Animal): def make_sound(self): print('汪汪汪') animals = [Cat(), Dog()] for animal in animals: animal.make_sound()
在上面的代碼中,Animal 是一個抽象基類,它定義了一個抽象方法 make_sound。Cat 和 Dog 是 Animal 的子類,它們都實現了 make_sound 方法。
在最后一行,我們創建了一個包含兩個 Animal 子類對象的列表,并依次調用它們的 make_sound 方法。
上一篇python 營銷工具包
下一篇c r循環生成json