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学习笔记之os模块使用总结
Nov 03 Python
Python 读写文件和file对象的方法(推荐)
Sep 12 Python
Python使用django搭建web开发环境
Jun 09 Python
Python使用PIL模块生成随机验证码
Nov 21 Python
Python中矩阵库Numpy基本操作详解
Nov 21 Python
python自动化生成IOS的图标
Nov 13 Python
使用python判断你是青少年还是老年人
Nov 29 Python
Python算法的时间复杂度和空间复杂度(实例解析)
Nov 19 Python
PyQt5高级界面控件之QTableWidget的具体使用方法
Feb 23 Python
python获取命令行参数实例方法讲解
Nov 02 Python
python链表类中获取元素实例方法
Feb 23 Python
Github 使用python对copilot做些简单使用测试
Apr 14 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学习笔记 [预定义数组(超全局数组)]
2011/06/09 PHP
php数组函数序列之each() - 获取数组当前内部指针所指向元素的键名和键值,并将指针移到下一位
2011/10/31 PHP
php post大量数据时发现数据丢失问题解决方法
2015/06/20 PHP
php bootstrap实现简单登录
2016/03/08 PHP
PHP封装的MSSql操作类完整实例
2016/05/26 PHP
PHP使用GD库制作验证码的方法(点击验证码或看不清会刷新验证码)
2017/08/15 PHP
thinkphp5 加载静态资源路径与常量的方法
2017/12/24 PHP
百度Popup.js弹出框进化版 拖拽小框架发布 兼容IE6/7/8,Firefox,Chrome
2010/04/13 Javascript
jQuery EasyUI API 中文文档 - Form表单
2011/10/06 Javascript
情人节专属 纯js脚本1k大小的3D玫瑰效果
2012/02/11 Javascript
javascript数字格式化通用类 accounting.js使用
2012/08/24 Javascript
Jquery绑定事件(bind和live的区别介绍)
2013/08/23 Javascript
jquery选择符快速提取web表单数据示例
2014/03/27 Javascript
JavaScript字符串对象的concat方法实例(用于连接两个或多个字符串)
2014/10/16 Javascript
javascript简单进制转换实现方法
2016/11/24 Javascript
canvas实现图像截取功能
2017/02/06 Javascript
详解AngularJS controller调用factory
2017/05/19 Javascript
WdatePicker.js时间日期插件的使用方法
2017/07/26 Javascript
基于 Immutable.js 实现撤销重做功能的实例代码
2018/03/01 Javascript
js中如何完美的解析数据
2018/03/18 Javascript
Vue Element 分组+多选+可搜索Select选择器实现示例
2018/07/23 Javascript
看看“疫苗查询”小程序有温度的代码
2018/07/31 Javascript
vue基于better-scroll仿京东分类列表
2020/06/30 Javascript
[01:02:38]DOTA2-DPC中国联赛定级赛 LBZS vs Phoenix BO3第二场 1月10日
2021/03/11 DOTA
Linux下Python获取IP地址的代码
2014/11/30 Python
Python实现的中国剩余定理算法示例
2017/08/05 Python
简单谈谈python中的语句和语法
2017/08/10 Python
对变量赋值的理解--Pyton中让两个值互换的实现方法
2017/11/29 Python
Python调用C++,通过Pybind11制作Python接口
2018/10/16 Python
利用python读取YUV文件 转RGB 8bit/10bit通用
2019/12/09 Python
如何将你的应用迁移到Python3的三个步骤
2019/12/22 Python
Python如何读取文件中图片格式
2020/01/13 Python
系统管理员的职责包括那些?管理的对象是什么?
2016/09/20 面试题
2014村务公开实施方案
2014/02/25 职场文书
寻找最美家庭活动方案
2014/08/20 职场文书
5.12护士节活动总结
2015/02/10 职场文书