位置: IT常识 - 正文

Python学习:property装饰器(pythonproperty)

编辑:rootadmin
1.property 装饰器:装饰器是在不修改被装饰对象源代码以及调用方式的前提下为被装饰对象添加新功能的可调用对象 property是一个装饰器,是用来绑定给对象的方法伪造成一个数据属性 装饰器property,可以将类中的函数“伪装成”对象的数据属性,对象在访问该特殊属性时会触发功能的执行,然后 ... 1.property

推荐整理分享Python学习:property装饰器(pythonproperty),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python prob,python@property,python学习路线,python学习路线,prophet python,prophet python,python prog,python学习手册 第5版 pdf,内容如对您有帮助,希望把文章链接给更多的朋友!

装饰器:装饰器是在不修改被装饰对象源代码以及调用方式的前提下为被装饰对象添加新功能的可调用对象

property是一个装饰器,是用来绑定给对象的方法伪造成一个数据属性

Python学习:property装饰器(pythonproperty)

装饰器property,可以将类中的函数“伪装成”对象的数据属性,对象在访问该特殊属性时会触发功能的执行,然后将返回值作为本次访问的结果。

使用property有效地保证了属性访问的一致性。另外property还提供设置和删除属性的功能

应用场景:有的功能属性听起来更像数据属性,python则提供了一种装饰器,可以将功能属性伪装成数据属性

2.案例:"""成人的BMI数值:过轻:低于18.5正常:18.5-23.9过重:24-27肥胖:28-32非常肥胖, 高于32  体质指数(BMI)=体重(kg)÷身高^2(m)  EX:70kg÷(1.75×1.75)=22.86"""  

案例一:

class People: def __init__(self, name, weight, height): self.name = name self.weight = weight self.height = height# 定义函数的原因1:# 1、从bmi的公式上看,bmi应该是触发功能计算得到的# 2、bmi是随着身高、体重的变化而动态变化的,不是一个固定的值# 说白了,每次都是需要临时计算得到的# 但是bmi听起来更像是一个数据属性,而非功能 @property def bmi(self):return self.weight / (self.height ** 2) obj1 = People('egon', 70, 1.83) print(obj1.bmi()) obj1.height=1.86 print(obj1.bmi()) print(obj1.bmi)

案例二:

'''学习中遇到问题没人解答?小编创建了一个Python学习交流群:711312441寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!''' class People: def __init__(self, name): self.__name = name def get_name(self): return self.__name def set_name(self, val): if type(val) is not str: print('必须传入str类型') return self.__name = val def del_name(self): print('不让删除') # del self.__name name=property(get_name,set_name,del_name) obj1=People('egon') # print(obj1.get_name()) # obj1.set_name('EGON') # print(obj1.get_name()) # obj1.del_name() # 人正常的思维逻辑 print(obj1.name) # # obj1.name=18 # del obj1.name

案例三:

class People: def __init__(self, name): self.__name = name @property def name(self): # obj1.name return self.__name @name.setter def name(self, val): # obj1.name='EGON' if type(val) is not str: print('必须传入str类型') return self.__name = val @name.deleter def name(self): # del obj1.name print('不让删除') # del self.__nameobj1=People('egon')# 人正常的思维逻辑print(obj1.name) ## obj1.name=18# del obj1.name
本文链接地址:https://www.jiuchutong.com/zhishi/313038.html 转载请保留说明!

上一篇:全面理解JSX(全面理解健康教案)

下一篇:Protobuf生成文件报错(protobuf 文档)

  • 微信发送5分钟以上视频怎么办(微信发送5分钟前撤回)

    微信发送5分钟以上视频怎么办(微信发送5分钟前撤回)

  • 华为手机安卓颜色反转怎么设置(华为手机安卓颜色不一样)

    华为手机安卓颜色反转怎么设置(华为手机安卓颜色不一样)

  • 手机膜的填充液对手机有影响吗(手机膜的填充液干了以后是一层白色的胶吗)

    手机膜的填充液对手机有影响吗(手机膜的填充液干了以后是一层白色的胶吗)

  • 联想平板电脑开不了机是怎么回事(联想平板电脑开不了机怎么办 屏幕黑屏)

    联想平板电脑开不了机是怎么回事(联想平板电脑开不了机怎么办 屏幕黑屏)

  • 三星pdp是什么(三星pda是什么)

    三星pdp是什么(三星pda是什么)

  • 华为p40pro功能介绍(华为p40pro有意思的功能)

    华为p40pro功能介绍(华为p40pro有意思的功能)

  • 小米cc9要不要升级miui11

    小米cc9要不要升级miui11

  • 三星s20可以双卡加内存卡吗(三星s20双卡双待吗)

    三星s20可以双卡加内存卡吗(三星s20双卡双待吗)

  • 闹钟声音小怎么办(闹钟声音小怎么调大声)

    闹钟声音小怎么办(闹钟声音小怎么调大声)

  • 苹果x扩容后遗症(iphone x扩容要多少钱)

    苹果x扩容后遗症(iphone x扩容要多少钱)

  • 手机hb在哪里能关掉(手机上的h)

    手机hb在哪里能关掉(手机上的h)

  • 华为手机看快手屏幕显示不全(华为手机看快手怎么上下滑)

    华为手机看快手屏幕显示不全(华为手机看快手怎么上下滑)

  • 电话传播声音的原理(电话传声的原理)

    电话传播声音的原理(电话传声的原理)

  • 怎么判断打印机没墨了(怎么判断打印机与电脑连接)

    怎么判断打印机没墨了(怎么判断打印机与电脑连接)

  • 视频分享朋友圈怎么弄(视频分享朋友圈不清晰)

    视频分享朋友圈怎么弄(视频分享朋友圈不清晰)

  • 抖音多闪有访客记录吗(多闪里怎么看抖音视频的访客记录)

    抖音多闪有访客记录吗(多闪里怎么看抖音视频的访客记录)

  • iPhone11pro怎么重启(苹果pro11怎么重启)

    iPhone11pro怎么重启(苹果pro11怎么重启)

  • 电脑home键是什么意思(电脑home键是干嘛的)

    电脑home键是什么意思(电脑home键是干嘛的)

  • 打电话用视频扣话费吗(打电话视频扣流量吗)

    打电话用视频扣话费吗(打电话视频扣流量吗)

  • 黑鲨2有主题商店么(黑鲨主题包)

    黑鲨2有主题商店么(黑鲨主题包)

  • 小米6清理手机内存(小米6清理手机内存方法)

    小米6清理手机内存(小米6清理手机内存方法)

  • 拼多多总额在哪里看(拼多多总消费额度在哪里查)

    拼多多总额在哪里看(拼多多总消费额度在哪里查)

  • 苹果手机怎么解除200m限制(苹果手机怎么解开锁屏)

    苹果手机怎么解除200m限制(苹果手机怎么解开锁屏)

  • PS基本的照片处理有哪些(ps图片的基本处理)

    PS基本的照片处理有哪些(ps图片的基本处理)

  • c0000218蓝屏解救方法(蓝屏c0000218代码是什么情况)

    c0000218蓝屏解救方法(蓝屏c0000218代码是什么情况)

  • 加计扣除填不了
  • 应交增值税已交税金是什么意思
  • 弃置费用的财务费用可以税前扣除吗
  • 建安行业是建筑行业吗
  • 划转税务的非税发票
  • 公司内控制度由谁制定
  • 银行理财收益算错兑付怎么办
  • 出口退税没有进项就退不了税吗?
  • 收到外国客户的祝福怎么回复
  • 存货跌价准备转回的条件有哪些
  • 土地租金一次付清的会计处理怎么做?
  • 残疾人收到房租租赁发票收入还要缴纳个税吗
  • 核定征收企业所得税率是多少
  • 应交增值税减免税款账务处理
  • 免税销售额怎么算出来的
  • 减税降费各项政策
  • 临时建筑进项税可以一次抵扣吗?
  • 股票价格变化的原因
  • 电子税务局进项票汇总
  • 500万以下固定资产最新政策
  • 存货进项税额转出会计处理
  • 软件开发工资低
  • 支付工人保险费计入什么科目里
  • 境外投资企业如何交税
  • 补交以前年度个税怎么做账
  • 研发支出是否可以抵税
  • 给法院交的诉讼费怎么交
  • 没有系统U盘,电脑密码忘记了如何打开电脑
  • 社保多交怎么办理
  • 股票属于以下哪一类金融工具
  • 航天信息维护费300元能全额抵扣吗
  • 客户申请退款商家拒绝退货退款会有什么效果
  • 发票开错重新开票怎么做账务处理?
  • 赠与房屋再次出售税费
  • 新准则土地使用权计入固定资产还是无形资产
  • c++stl详解
  • 最强大的人工智能武器
  • php微信公众号开源框架
  • 实现php搜索框代码
  • 不含税销售额和计税销售额
  • 留抵税额一般记哪个科目
  • linux rdp客户端
  • 关于存货跌价准备
  • 没有抄报税就申报了怎么办
  • 物业管理费开票类目
  • 生产车间领用材料的会计分录
  • mysql常见操作
  • mongodb的用户名和密码
  • 固定资产是不是非货币性资产
  • 企业车辆年检费多少钱
  • 所得税报表的营业成本包括费用吗
  • mysql出现箭头
  • 私车公用怎么办理手续
  • 纳税滞纳金的计算方法
  • 出口退税一般程度是什么
  • 所得税弥补以前年度亏损是几年
  • 个人转租房需要注意什么
  • 包装物是指什么
  • 委托加工物资加工费的增值税计入成本吗
  • 坏账确认方法有哪些?
  • 非税收入定额票据是什么
  • 工业企业会计与管理论文
  • 以前年度损益调整怎么做账
  • 工会经费按实际发放交还是以计提的
  • sqlserver exists,not exists的用法
  • xp系统中文语言包
  • ubuntu做lvm
  • centos6.5无法启动
  • 远程操作win10
  • win7在开始菜单右击
  • perl常用函数
  • n归档是什么软件
  • js模块化开发教程
  • jquery可以实现哪些效果
  • 结婚日课实例讲解
  • 基于JQuery的$.ajax方法进行异步请求导致页面闪烁的解决办法
  • python调大小
  • 为什么电子发票没有监制章
  • 咨询服务费税率2020小规模
  • 消费税的税收优惠有哪些
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设