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查询阿里巴巴关键字排名的方法
Jul 08 Python
在Python的Django框架中编写错误提示页面
Jul 22 Python
Python网站验证码识别
Jan 25 Python
Python matplotlib通过plt.scatter画空心圆标记出特定的点方法
Dec 13 Python
python将txt等文件中的数据读为numpy数组的方法
Dec 22 Python
pandas取出重复数据的方法
Jul 04 Python
简单了解python PEP的一些知识
Jul 13 Python
Python 装饰器@,对函数进行功能扩展操作示例【开闭原则】
Oct 17 Python
python使用 cx_Oracle 模块进行查询操作示例
Nov 28 Python
python 经典数字滤波实例
Dec 16 Python
基于python实现matlab filter函数过程详解
Jun 08 Python
经验丰富程序员才知道的8种高级Python技巧
Jul 27 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
菜鸟修复电子管记
2021/03/02 无线电
基于PHP遍历数组的方法汇总分析
2013/06/08 PHP
关于使用key/value数据库redis和TTSERVER的心得体会
2013/06/28 PHP
PHP 7.0新增加的特性介绍
2017/06/08 PHP
PHP中$GLOBALS['HTTP_RAW_POST_DATA']和$_POST的区别分析
2017/07/03 PHP
php微信公众号开发之简答题
2018/10/20 PHP
PHP读取Excel内的图片(phpspreadsheet和PHPExcel扩展库)
2019/11/19 PHP
CL vs ForZe BO5 第一场 2.13
2021/03/10 DOTA
Avengerls vs KG BO3 第一场2.18
2021/03/10 DOTA
手机端网页点击链接触发自动拨打或保存电话的示例代码
2014/08/15 Javascript
基于JavaScript实现单选框下拉菜单添加文件效果
2016/06/26 Javascript
详解js中的apply与call的用法
2016/07/30 Javascript
AngularJS基础 ng-focus 指令简单示例
2016/08/01 Javascript
微信小程序 自己制作小组件实例详解
2016/12/22 Javascript
深入理解node.js之path模块
2017/05/03 Javascript
JS实现图片点击后出现模态框效果
2017/05/03 Javascript
javascript实现导航栏分页效果
2019/06/27 Javascript
JS控制只能输入数字并且最多允许小数点两位
2019/11/24 Javascript
JavaScript 类的封装操作示例详解
2020/05/16 Javascript
Vue切换组件实现返回后不重置数据,保留历史设置操作
2020/07/21 Javascript
[31:33]2014 DOTA2国际邀请赛中国区预选赛 TongFu VS DT 第一场
2014/05/23 DOTA
在Python中操作日期和时间之gmtime()方法的使用
2015/05/22 Python
python中__call__内置函数用法实例
2015/06/04 Python
Python 从列表中取值和取索引的方法
2018/12/25 Python
Python中按键来获取指定的值
2019/03/02 Python
Python秒算24点实现及原理详解
2019/07/29 Python
英国网上购买门:Direct Doors
2018/06/07 全球购物
美国领先的机场停车聚合商:Airport Parking Reservations
2020/02/28 全球购物
兼职学生的自我评价
2013/11/24 职场文书
淘宝好评语大全
2014/05/05 职场文书
师范学院毕业生求职信
2014/06/24 职场文书
活着观后感
2015/06/03 职场文书
2016年教育局“我们的节日——端午节”主题活动总结
2016/04/01 职场文书
phpQuery解析HTML乱码问题(补充官网未列出的乱码解决方案)
2021/04/01 PHP
Mysql 如何查询时间段交集
2021/06/08 MySQL
古见同学有交流障碍症 第二季宣传CM公开播出
2022/04/11 日漫