python @property使用详解


1.@property,@xx.setter的作用
把方法变成属性
@property获取属性
@xx.setter设置属性

2.使用示例

#@property使用
class Lang(object):
    def __init__(self,name,score):
        self.name=name
        self.score=score
        self.__rank=4
    @property
    def rank(self):
        return self.__rank
    @rank.setter
    def rank(self,n):
        self.__rank=n
    def langinfo(self):
        print '%s:%s'%(self.name,self.score)
lang1=Lang('Python','8.5')
print lang1.rank

运行结果:

#@rank.setter使用
class Lang(object):
    def __init__(self,name,score):
        self.name=name
        self.score=score
        self.__rank=4
    @property
    def rank(self):
        return self.__rank
    @rank.setter
    def rank(self,n):
        self.__rank=n
    def langinfo(self):
        print '%s:%s'%(self.name,self.score)
lang1=Lang('Python','8.5')
lang1.rank=6
print lang1.rank

运行结果:

posted on 2017-07-24 21:34  迪米特  阅读(411)  评论(0编辑  收藏  举报

导航