python3.6中@property装饰器的使用方法示例


Posted in Python onAugust 17, 2019

本文实例讲述了python3.6中@property装饰器的使用方法。分享给大家供大家参考,具体如下:

1、@property装饰器的使用场景简单记录如下:

  • 负责把一个方法变成属性调用;
  • 可以把一个getter方法变成属性,@property本身又创建了另一个装饰器@score.setter,负责把一个setter方法变成属性赋值;
  • 只定义getter方法,不定义setter方法就是一个只读属性

2、通过一个例子来加深对@property装饰器的理解:利用@property给一个Screen对象加上width和height属性,以及一个只读属性resolution。

代码实现如下:

class Screen(object):
 @property
 def width(self):
 return self._width
 @width.setter
 def width(self,value):
 self._width = value
 @property
 def height(self):
 return self._height
 @height.setter
 def height(self,values):
 self._height = values
 @property
 def resolution(self):
 return self._width * self._height
s = Screen()
s.width = 1024
s.height = 768
print('resolution = ',s.resolution)

运行结果:

resolution =  786432

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python轻松查到删除自己的微信好友
Jan 10 Python
使用pyecharts无法import Bar的解决方案
Apr 23 Python
Python做简单的字符串匹配详解
Mar 21 Python
Python3.遍历某文件夹提取特定文件名的实例
Apr 26 Python
Python装饰器知识点补充
May 28 Python
Python 爬虫之Beautiful Soup模块使用指南
Jul 05 Python
python实现任意位置文件分割的实例
Dec 14 Python
浅谈python常用程序算法
Mar 22 Python
Django框架使用mysql视图操作示例
May 15 Python
Python pickle模块实现对象序列化
Nov 22 Python
解决Opencv+Python cv2.imshow闪退问题
Apr 24 Python
python继承threading.Thread实现有返回值的子类实例
May 02 Python
对django的User模型和四种扩展/重写方法小结
Aug 17 #Python
python3.6编写的单元测试示例
Aug 17 #Python
python3 实现的对象与json相互转换操作示例
Aug 17 #Python
python3实现的zip格式压缩文件夹操作示例
Aug 17 #Python
django 通过url实现简单的权限控制的例子
Aug 16 #Python
对Django中内置的User模型实例详解
Aug 16 #Python
对Django中的权限和分组管理实例讲解
Aug 16 #Python
You might like
PHP动态创建Web站点的方法
2011/08/14 PHP
JavaScript方法和技巧大全
2006/12/27 Javascript
JS 日期验证正则附asp日期格式化函数
2009/09/11 Javascript
JavaScript 常用函数
2009/12/30 Javascript
jquery插件制作 提示框插件实现代码
2012/08/17 Javascript
javascript实现Table排序的方法
2015/05/15 Javascript
javascript实现可全选、反选及删除表格的方法
2015/05/15 Javascript
jQuery 遍历函数详解
2015/07/05 Javascript
谈谈JavaScript中浏览器兼容问题的写法小议
2016/12/17 Javascript
Swiper实现轮播图效果
2017/07/03 Javascript
深入浅析javascript继承体系
2017/10/23 Javascript
angularjs使用gulp-uglify压缩后执行报错的解决方法
2018/03/07 Javascript
Vue.js 实现数据展示全部和收起功能
2018/09/05 Javascript
使用vue2实现带地区编号和名称的省市县三级联动效果
2018/11/05 Javascript
JavaScript实现选项卡效果的分析及步骤
2019/04/16 Javascript
vue2.x 通过后端接口代理,获取qq音乐api的数据示例
2019/10/30 Javascript
Python ORM框架SQLAlchemy学习笔记之映射类使用实例和Session会话介绍
2014/06/10 Python
Python+MongoDB自增键值的简单实现
2016/11/04 Python
详解Python中 sys.argv[]的用法简明解释
2017/12/20 Python
Python实现App自动签到领取积分功能
2018/09/29 Python
Python高级特性 切片 迭代解析
2019/08/23 Python
Python 绘制可视化折线图
2020/07/22 Python
Python configparser模块封装及构造配置文件
2020/08/07 Python
通过实例了解python__slots__使用方法
2020/09/14 Python
Python爬虫之Selenium警告框(弹窗)处理
2020/12/04 Python
Chain Reaction Cycles俄罗斯:世界上最大的在线自行车商店
2019/08/27 全球购物
通用C#笔试题附答案
2016/11/26 面试题
经济管理专业自荐信
2013/12/30 职场文书
鼓舞士气的口号
2014/06/16 职场文书
大学生个人求职信例文
2014/07/07 职场文书
公司法定代表人授权委托书
2014/09/29 职场文书
医学生自荐信范文
2015/03/05 职场文书
企业财务人员岗位职责
2015/04/14 职场文书
班级联欢会主持词
2015/07/03 职场文书
教师远程培训心得体会
2016/01/09 职场文书
健身房被搭讪?用python写了个小米计时器助人为乐
2021/06/08 Python