位置: 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 文档)

  • 电脑字体在哪个文件夹(电脑字体在哪个设置)

    电脑字体在哪个文件夹(电脑字体在哪个设置)

  • 苹果手机拉黑怎么恢复(苹果手机拉黑怎么拉出来的)

    苹果手机拉黑怎么恢复(苹果手机拉黑怎么拉出来的)

  • 快手极速版违反了规定怎么办(快手极速版违反社区规定怎么解封)

    快手极速版违反了规定怎么办(快手极速版违反社区规定怎么解封)

  • 笔记本锐龙和酷睿的区别(笔记本锐龙和酷睿玩三D哪一个好)

    笔记本锐龙和酷睿的区别(笔记本锐龙和酷睿玩三D哪一个好)

  • 电脑键盘截图快捷键ctrl加什么(电脑键盘截图快捷键不能用了)

    电脑键盘截图快捷键ctrl加什么(电脑键盘截图快捷键不能用了)

  • 微流控芯片技术的原理(微流控芯片技术检测抗体原理)

    微流控芯片技术的原理(微流控芯片技术检测抗体原理)

  • 华为手机碎屏险一年内可以免费换几次(华为手机碎屏险怎么查询)

    华为手机碎屏险一年内可以免费换几次(华为手机碎屏险怎么查询)

  • 微信只绑定身份证限额多少

    微信只绑定身份证限额多少

  • 旧电脑的硬盘可以接到新电脑吗(旧电脑的硬盘可以直接用吗)

    旧电脑的硬盘可以接到新电脑吗(旧电脑的硬盘可以直接用吗)

  • 苹果云备份多大内存(苹果云备份多大内存够用)

    苹果云备份多大内存(苹果云备份多大内存够用)

  • 怎么减掉视频的一部分(怎么减掉视频的后半截)

    怎么减掉视频的一部分(怎么减掉视频的后半截)

  • 微机中的cpu是指什么(微机中cpu称为)

    微机中的cpu是指什么(微机中cpu称为)

  • 天冷苹果手机为啥关机(苹果手机天冷为什么耗电快)

    天冷苹果手机为啥关机(苹果手机天冷为什么耗电快)

  • 小米6x的小爱同学怎么唤醒(小米6x小爱同学语音唤醒不了)

    小米6x的小爱同学怎么唤醒(小米6x小爱同学语音唤醒不了)

  • 腾讯会员和超级会员有啥区别(腾讯会员和超级影视会员哪个好)

    腾讯会员和超级会员有啥区别(腾讯会员和超级影视会员哪个好)

  • 咸鱼举报别人会看见么(咸鱼举报会退钱吗)

    咸鱼举报别人会看见么(咸鱼举报会退钱吗)

  • 手机的手电筒怎么调出来(手机的手电筒怎么不能用了)

    手机的手电筒怎么调出来(手机的手电筒怎么不能用了)

  • 魅族16s有几个扬声器(魅族16th几个扬声器)

    魅族16s有几个扬声器(魅族16th几个扬声器)

  • 手机QQ浏览器怎么编辑文件(手机qq浏览器怎么缩小页面比例)

    手机QQ浏览器怎么编辑文件(手机qq浏览器怎么缩小页面比例)

  • 芒果tv怎么扫码登录(芒果tv怎么扫码登录另一个手机)

    芒果tv怎么扫码登录(芒果tv怎么扫码登录另一个手机)

  • oppok3微信视频可以美颜吗(oppo微信视频来了没反应)

    oppok3微信视频可以美颜吗(oppo微信视频来了没反应)

  • 流量超出限额被限速怎么办(流量超过限制)

    流量超出限额被限速怎么办(流量超过限制)

  • 华为鸿蒙一键抠图怎么用?鸿蒙一键抠图使用教程(华为鸿蒙一键抠图)

    华为鸿蒙一键抠图怎么用?鸿蒙一键抠图使用教程(华为鸿蒙一键抠图)

  • 路由器怎么选择连接模式?选择MW300RM路由器模式的方法(穿墙路由器怎么选择)

    路由器怎么选择连接模式?选择MW300RM路由器模式的方法(穿墙路由器怎么选择)

  • 城建税减免性质代码怎么选择2020年4月
  • 计提企业所得税会计分录怎么做
  • 企业所得税季度申报时间
  • 技术服务费怎么开票税率
  • 汽车区域差价
  • 纳税评估怎么办
  • 营改增后向境外提供有偿服务是否需要缴纳增值税?
  • 所得税汇算清缴调整项目
  • 公司注册资金未实缴可以申请破产吗
  • 税务利润表怎么填
  • 车不入库扣几分
  • 代扣大额医保进哪个账户
  • 公司员工餐费会计分录
  • 帮其他公司垫付的钱怎么写分录
  • 企业结业后实收资本怎么处理?
  • 结转已售材料成本600元会计分录
  • adsl灯一直闪烁
  • 苹果手机怎么修改默认输入法
  • php实现上传图片功能
  • win10 上帝模式
  • PHP:php_strip_whitespace()的用法_misc函数
  • 年底帐务处理
  • 预收账款什么时候开发票
  • 年应税销售额包含哪些
  • gain_trickler_3202.exe 进程查询 gain_trickler_3202进程是什么文件
  • php text
  • 应交税费为负数什么原因
  • 关键点检测backbone
  • win7纯净版系统怎么安装
  • Laravel中七个非常有用但很少人知道的Carbon方法
  • 管理费用冲减其他应收款
  • 广告代理费制度
  • 情感计算的应用
  • 报税扣款锁定怎么处理
  • 增值税一般纳税人是什么意思
  • php md5 16位
  • 2019年4月1日降低城镇职工什么单位缴费比例
  • 使用spring可以实现声明式事务吗
  • 企业所得税申报表在哪里打印
  • 小企业会计准则2023电子版
  • 基本户是活期还是定期
  • 银行承兑到期后未兑付
  • 运输费计入什么科目分录
  • 合作社财政补助平均量化
  • 水利建设行业
  • 股东出资做什么科目
  • 保证合同的要件
  • 收购票票样
  • 运费发票没到可以先计提吗
  • 合资注册公司应该注意什么
  • 业务招待费会计科目
  • 捐赠利得计入资产成本吗
  • 公司开具电子发票是否取消纸质发票开具
  • 利润总额与应纳税所得额的差异国内动态
  • 买入返售证券什么意思
  • 旅行社财务会计工作内容
  • phpmyadmin配置文件
  • windows 配置
  • ubuntu16连接wifi步骤
  • commserver什么意思
  • win8自启动在哪儿设置
  • linux系统了解
  • win xp 内存
  • linux的特殊权限
  • 如何让win8系统变快
  • [置顶]bilinovel
  • javascript 浏览器
  • 苹果mac安装
  • 批处理程序教程
  • 批处理应用实例
  • 了不起的女孩
  • 网页的css
  • jquery easyui validatebox remote的使用详解
  • angularjs和后端交互
  • 2000元工资交多少党费
  • 陕西省国家税务局
  • 南京税务局几点上班几点下班
  • 加强宣传的名言警句
  • 黄石市地方税务局人工客服电话
  • 办税服务厅是税收工作的
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设