关于python中的抽象类
关于python中的抽象类
本质是:不想让使用者实例化抽象类
对于 abstractstaticmethod 在py3.3中弃用了。
一 如何定义一个抽象类
1 常规做法 先import ABC 继承ABC
2 用abstractmethod或abstractclassmethod装饰一个方法。
二 使用说明
子类中 必须要定义 在基类中 被abstractmethod 装饰的 方法。
两种情况:
1) 正常方法 就是self,参数1 ,参数2...
2)静态方法 也是staticmethod 装饰这个方法。
注意在 基类中使用staticmethod 不会影响到 子类。
正确例子:
from abc import ABC, abstractstaticmethod, abstractclassmethod, abstractmethod class BasePrompt(ABC): @abstractmethod def new_prompt(context, content): return " " class NewPro(BasePrompt): # def aaa(self): # print("nnnnnnnnn") @staticmethod def new_prompt(context, content): print("abs--------") if __name__ == "__main__": print(1111111) # bp = BasePrompt() np = NewPro() np.new_prompt(1,2)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人