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
相关推荐
m0_662577973 分钟前
自动化机器学习(AutoML)库TPOT使用指南
jvm·数据库·python
q_35488851538 分钟前
计算机毕业设计源码:Python动漫智能推荐与可视化分析系统 Django框架 协同过滤推荐算法 可视化 数据分析 大数据 大模型(建议收藏)✅
python·scrapy·数据分析·django·课程设计·旅游·推荐算法
与虾牵手8 分钟前
写了 8 年 Python 转 Rust,我被所有权机制折磨了整整一周
python
sqyno1sky16 分钟前
机器学习模型部署:将模型转化为Web API
jvm·数据库·python
何政@25 分钟前
通过python 快速完成ai 构建
人工智能·python·ai·大模型·love l
万粉变现经纪人30 分钟前
如何解决 pip install shapely 报错 GEOS C 库未找到 问题
c语言·开发语言·python·pycharm·bug·pandas·pip
dapeng287032 分钟前
机器学习与人工智能
jvm·数据库·python
全栈凯哥1 小时前
19.Python中的标准库完全指南
python
毕设源码-邱学长1 小时前
【开题答辩全过程】以 基于python的天气预测可视化系统为例,包含答辩的问题和答案
开发语言·python
B站计算机毕业设计之家1 小时前
Python 基于协同过滤的动漫推荐与数据分析平台 Django框架 协同过滤推荐算法 可视化 数据分析 大数据 大模型 计算机毕业设计(建议收藏)✅
大数据·python·scrapy·数据分析·django·课程设计·推荐算法