浅谈property属性

什么是property属性?

简单来说:一种用起来像是使用的实例属性一样的特殊属性,可以对应于某个方法

python中Property属性的功能是:property 属性内部进行一系列的逻辑运算,最后返回运算结果。

Property 属性的定义和调用要注意以下几点:

  • 定义时,在实例方法的基础上,添加 @property 装饰器;并且仅有一个self 参数
  • 调用时,无需括号    
# coding = utf-8
class Work(object):
    @property
    def work_1(self):
        return "work_1 ===> property"
    @work_1.setter
    def work_1(self, value):
        print('work_1 ===> setter')
    @work_1.deleter
    def work_1(self):
        print('work_1 ===> deleter')

w = Work()

print(w.work_1)    # 自动执行 @property 修饰的 work_1 方法,并获取方法的返回值
w.work_1 = 999   # 自动执行 @work_1.setter 修饰的 work_1 方法,并将  999 赋值给方法的参数
del w.work_1       # 自动执行 @work1.deleter 修饰的 work_1 方法


经典类中的属性只有一种访问方式,其对应被 @property 修饰的方法

新式类中的属性有三种访问方式,

并分别对应了三个被@property、@方法名.setter、@方法名.deleter修饰的方法






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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值