python 抽象类

这是一个正常类

python 复制代码
#!/usr/bin/env python
# -*- encoding: utf-8 -*-
class A:
    def f(self):
        pass


class B(A):
    def g(self):
        print("g")


if __name__ == "__main__":
    a = A()
    b = B()
    b.g()  # g
    b.f()

抽象类(C++中含有纯虚函数的类,)

让A继承ABC,然后给f标上@abstractmethod,A就是一个抽象类了

必须要实现f才能实例化

python 复制代码
#!/usr/bin/env python
# -*- encoding: utf-8 -*-
from abc import ABC, abstractmethod


class A(ABC):
    @abstractmethod
    def f(self):
        pass


class B(A):
    def f(self):
        print("f")

    def g(self):
        print("g")


class C(A):
    pass


if __name__ == "__main__":
    # a = A()
    b = B()
    b.g()  # g
    b.f()  # f
    c = C()  # TypeError: Can't instantiate abstract class C with abstract methods f
相关推荐
小雨中_2 分钟前
3.1 RLHF:基于人类反馈的强化学习
人工智能·python·深度学习·算法·动态规划
Maggie_ssss_supp1 小时前
Linux-python
开发语言·python
Sunhen_Qiletian1 小时前
回归与分类的本质区别
人工智能·python
星星乘坐的船1 小时前
基于Kubernetes Python SDK实现Job创建
linux·python·kubernetes
W_Meng_H2 小时前
XXL-JOB - 集成 Python 执行器实战指南
linux·python
一切尽在,你来2 小时前
AI 大模型应用开发前置知识:Python 类型注解全教程
人工智能·python·ai编程
喵手2 小时前
Python爬虫实战:地图 POI + 行政区反查(合规接口) - 商圈热力数据准备等!
爬虫·python·爬虫实战·零基础python爬虫教学·行政区反查·地图poi·商圈热力数据准备
小雨中_2 小时前
2.9 TRPO 与 PPO:从“信赖域约束”到“近端裁剪”的稳定策略优化
人工智能·python·深度学习·机器学习·自然语言处理
小雨中_2 小时前
2.5 动态规划方法
人工智能·python·深度学习·算法·动态规划
癫狂的兔子3 小时前
【Python】【机器学习】决策树
python·决策树·机器学习