位置: 编程技术 - 正文

在Python中定义和使用抽象类的方法(python怎么定义)

编辑:rootadmin

推荐整理分享在Python中定义和使用抽象类的方法(python怎么定义),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:简述python语言中定义函数的规则,python中定义和声明,在python中定义函数,在python中定义函数,python定义x,python中定义和声明,在python中怎么定义,python定义pi,内容如对您有帮助,希望把文章链接给更多的朋友!

像java一样python也可以定义一个抽象类。

在讲抽象类之前,先说下抽象方法的实现。

抽象方法是基类中定义的方法,但却没有任何实现。在java中,可以把方法申明成一个接口。而在python中实现一个抽象方法的简单的方法是:

任何从Sheep继承下来的子类必须实现get_size方法。否则就会产生一个错误。但这种实现方法有个缺点。定义的子类只有调用那个方法时才会抛错。这里有个简单方法可以在类被实例化后触发它。使用python提供的abc模块。

这里实例化Sheep类或任意从其继承的子类(未实现get_size)时候都会抛出异常。

因此,通过定义抽象类,可以定义子类的共同method(强制其实现)。

如何使用抽象类

通过ABCMeta元类来创建一个抽象类, 使用abstractmethod装饰器来表明抽象方法

注册具体类

从抽象类注册一个具体的类

子类化实现

可以使用继承抽象类的方法来实现具体类这样可以避免使用register. 但是副作用是可以通过基类找出所有的具体类

在Python中定义和使用抽象类的方法(python怎么定义)

如果使用继承的方式会找出所有的具体类,如果使用register的方式则不会被找出

使用__subclasshook__

使用__subclasshook__后只要具体类定义了与抽象类相同的方法就认为是他的子类

不完整的实现

如果构建不完整的具体类会抛出D不能实例化抽象类和抽象方法

具体类中使用抽象基类

打印结果

可以使用super来重用抽象基类中的罗辑, 但会迫使子类提供覆盖方法.

抽象属性

打印结果,A不能被实例化,因为只有一个抽象的property getter method.

定义抽象的读写属性

打印结果, 定义具体类的property时必须与抽象的abstract property相同。如果只覆盖其中一个将不会工作.

使用装饰器语法来实现读写的抽象属性, 读和写的方法应该相同.

举例讲解Python中metaclass元类的创建与使用 元类是可以让你定义某些类是如何被创建的。从根本上说,赋予你如何创建类的控制权。元类也是一个类,是一个type类。元类一般用于创建类。在执行

Python的Tornado框架实现图片上传及图片大小修改功能 图片的上传上传图片使用了表单提交,下面是html部分,enctype="multipart/form-data"表示不对字节进行编码,上传文件类型时需指定.input标签的type="file"指定上传

Python的Tornado框架实现异步非阻塞访问数据库的示例 tornado即是一个http非阻塞服务器,就要用起来,我们将用到tornado框架,mongodb数据库以及motor(mongodb的异步驱动).来简单实现tornado的非阻塞功能.其他环境支持

标签: python怎么定义

本文链接地址:https://www.jiuchutong.com/biancheng/386995.html 转载请保留说明!

上一篇:Python中functools模块的常用函数解析(python3 functools)

下一篇:举例讲解Python中metaclass元类的创建与使用(python 举例)

  • 工程预付款的支付要求
  • 应交消费税的税目
  • 个人所得税申报截止时间
  • 含税金额与不含税金额的换算
  • 先付款后签合同 法律效力
  • 2021年专项附加扣除必须要确认吗
  • 税盘清卡截止每个月
  • 火车票的进项税额
  • 银行现金增加会计分录
  • 普通发票需要进项税额转出吗
  • 增值税发票污染了能补开吗
  • 场外货币基金赎回利息
  • 关于固定资产管理
  • 12月的工资啥时候发
  • 个人转账至公司要交税吗
  • 企业的利润分配顺序
  • 人力资源劳务外包服务开票
  • 运输途中发生货物丢失
  • 员工有多处收入怎么申报个人所得税
  • 系统日志在哪里打开
  • 苹果14promax电池掉电很快
  • 受托加工物资的账务处理例题
  • 公司向股东借款合法吗
  • 网络平台上进行网络营销
  • 增值税的滞纳金怎么做账
  • 电脑网页播放视频只有声音没有画面
  • php中的类是什么
  • 与资产相关的政府补助,如果相关资产在使用寿命结束时
  • 城市里创业
  • p指针后移的语句
  • 资产处置损益会计科目
  • 建筑业的账务处理办法
  • 图卷积神经网络原理
  • php模拟表单提交
  • 存货核算方法可以变更吗
  • 如何知道是干皮还是油皮
  • 一般纳税人企业所得税多久申报一次
  • 残保金漏报如何处理
  • discuz去除底部
  • 结转销售成本的凭证需要附件吗
  • 其他综合收益要结转到本年利润吗
  • 增值税电子发票怎么下载
  • 债务重组开场白
  • 资产负债表怎么看盈利或亏损
  • 票据的收款人和持票人有什么区别
  • 人员招聘费用预算
  • 施工企业老板名字
  • 计提折旧的固定资产平均总值怎么算
  • 保险费用缴纳
  • 滴滴电子普通发票能抵扣进项税吗
  • 在建工程借款利息计入哪里
  • 商贸企业增值税税率是多少
  • 建筑行业每月报税
  • 外贸公司出口退税进项发票没及时开票有影响吗
  • 收到赞助费如何开发票
  • 税务局指定购买发票流程
  • 行政事业单位计提工资怎么做账
  • 合伙 利润分配
  • 企业所得税季度交还要年交吗
  • mysql oracle和sqlserver分页查询实例解析
  • sql语句递归
  • linux 使用技巧
  • win10教育系统
  • wrme.exe是什么
  • cocos2dx4.0教程
  • SDK不兼容Ubuntu64位系统的解决办法!!!
  • uiview继承哪个类
  • 一起学写字的宣传文案
  • unity3d题库
  • js文字循环滚动代码
  • jquery的使用步骤
  • unity3d怎么做动画
  • 创建shell脚本命令
  • django框架详解
  • 辽宁省国税局网站
  • 领导班子和领导干部政绩观偏差主要问题清单
  • 收购烟叶可抵扣进项税
  • 浅谈新时代劳动教育答案
  • 税务局 周六
  • 国税申报作废怎么操作
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设