Python高级语法-对象实例对象属性-Property总结(4.6.2)

@

1.说明

property属性,返回的是值
不是callable的,也就是不能使用方法来调用
只能传入self,不能传入其他
用处,能返回局部数据,比如当分页的时候
上面的为get方法,还有set方法和delete方法
当del后,再次调用会抛异常
property就相当于javabean里面的getter,setter
一共有两种方法:装饰器,类属性
第二种方法可以使用doct,但是调用的时候使用类来调用

使用property能简化数据获取的流程

2.代码

class Provice(object):
    def __init__(self, index):
        # 实例属性
        self.index = index

    @property
    def index_(self):
        return self.index * 2




    @index_.setter
    def index_(self,value):
        self.index = value


    @index_.deleter
    def index_(self):
        del  self.index



    def get_bar(self):
        return self.index * 2

    def set_bar(self,value):
        self.index = value

    def del_bar(self):
        del  self.index


    BAR = property(get_bar,set_bar,del_bar,"description")


if __name__ == '__main__':
    ddd = Provice(2)
    print(ddd.index_)
    ddd.index_ = 25
    print(ddd.index_)
    # del ddd.index_
    # print(ddd.index_)

    print(ddd.BAR)
    ddd.BAR = 1
    print(ddd.BAR)
    print(Provice.BAR.__doc__)
    # del ddd.BAR



关于作者

个人博客网站
个人GitHub地址
个人公众号:
在这里插入图片描述

原文地址:https://www.cnblogs.com/simon-idea/p/11412060.html