类似于接口的概念,便于统一API。
定义一个base class:
from abc import ABC, abstractmethod
class Person(ABC):
@abstractmethod # 定义抽象方法,无需实现功能
def get_name(self) -> str:
'''子类必须定义本方法'''
pass
@abstractmethod # 定义抽象方法,无需实现功能
def get_id(self) -> str:
'''子类必须定义本方法'''
pass
继承自上述Person类的子类必须实现 get_name、get_id这两个方法,否则会报错。
class Student(Person):
def get_name(self) -> str:
# 获取name, balabala
return name
def get_id(self) -> str:
# 获取id, balabala
return id
本文介绍了Python中的抽象基类(ABC)的使用,通过定义`Person`类并设置`get_name`和`get_id`为抽象方法,强制子类如`Student`必须实现这些方法。这种设计模式确保了代码的规范性和可扩展性,是面向对象编程中的常见实践。
469

被折叠的 条评论
为什么被折叠?



