python3.6中@property装饰器的使用

Python装饰器的定义、使用简单记录如下:

1、装饰器的定义:

在代码运行期间动态增加功能的方式,称之为“装饰器”

2、装饰器的作用:

本质上是一个Python函数或类,可以让其他函数或类在不需要任何代码修改的前提下增加额外的功能,装饰器的返回值也是一个函数/类对象。简单的说,装饰器的作用就是为已经存在的对象添加额外的功能

3、装饰器的使用场景:

  • 有切面需要的场景,比如插入日志、性能测试、事务处理、缓存、权限校验等场景

4、装饰器的使用方式

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

5、通过一个例子来加深对@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)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值