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的for和break循环结构中使用else语句的技巧
May 24 Python
python实现聚类算法原理
Feb 12 Python
Python+OpenCV实现图像融合的原理及代码
Dec 03 Python
python实现简单flappy bird
Dec 24 Python
python运用pygame库实现双人弹球小游戏
Nov 25 Python
Python字符串、列表、元组、字典、集合的补充实例详解
Dec 20 Python
使用TensorFlow搭建一个全连接神经网络教程
Feb 06 Python
python实现逢七拍腿小游戏的思路详解
May 26 Python
Python如何在main中调用函数内的函数方式
Jun 01 Python
Keras-多输入多输出实例(多任务)
Jun 22 Python
PyCharm 2020.1版安装破解注册码永久激活(激活到2089年)
Sep 24 Python
Python 实现二叉查找树的示例代码
Dec 21 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获取目标函数执行时间示例
2014/03/04 PHP
php利用云片网实现短信验证码功能的示例代码
2017/11/18 PHP
node.js中的fs.read方法使用说明
2014/12/17 Javascript
基于jquery实现省市联动特效
2015/12/17 Javascript
详解js实现线段交点的三种算法
2016/08/09 Javascript
nodejs和php实现图片访问实时处理
2017/01/05 NodeJs
nodejs个人博客开发第七步 后台登陆
2017/04/12 NodeJs
JavaScript中的FileReader图片预览上传功能实现代码
2017/07/24 Javascript
Bootstrap Table快速完美搭建后台管理系统
2017/09/20 Javascript
讲解vue-router之什么是嵌套路由
2018/05/28 Javascript
jQuery 实现倒计时天,时,分,秒功能
2018/07/31 jQuery
jQuery中常用动画效果函数知识点整理
2018/08/19 jQuery
详解angularjs跨页面传参遇到的一些问题
2018/11/01 Javascript
vue+elementUi图片上传组件使用详解
2019/08/20 Javascript
JS document对象简单用法完整示例
2020/01/14 Javascript
详解ES6新增字符串扩张方法includes()、startsWith()、endsWith()
2020/05/12 Javascript
jQuery实现日历效果
2020/09/11 jQuery
解决antd 下拉框 input [defaultValue] 的值的问题
2020/10/31 Javascript
用Python的Flask框架结合MySQL写一个内存监控程序
2015/11/07 Python
详解python调用cmd命令三种方法
2019/07/08 Python
python多线程分块读取文件
2019/08/29 Python
python调用HEG工具批量处理MODIS数据的方法及注意事项
2020/02/18 Python
如何基于python实现不邻接植花
2020/05/01 Python
python 下载文件的几种方法汇总
2021/01/06 Python
美国最大的农村生活方式零售店:Tractor Supply Company(TSC)
2017/05/15 全球购物
孤独星球出版物:Lonely Planet Publications
2018/03/17 全球购物
奥地利婴儿用品和玩具购物网站:baby-markt.at
2020/01/26 全球购物
全球性的众包图形设计市场:DesignCrowd
2021/02/02 全球购物
优秀求职自荐信怎样写
2013/12/18 职场文书
优秀班干部事迹材料
2014/01/26 职场文书
2014年党务公开实施方案
2014/02/27 职场文书
倡议书的格式写法
2015/04/28 职场文书
决心书格式范文
2015/09/23 职场文书
简单总结SpringMVC拦截器的使用方法
2021/06/28 Java/Android
Mysql忘记密码解决方法
2022/02/12 MySQL
Python中np.random.randint()参数详解及用法实例
2022/09/23 Python