python property的用法

property是python的一个内建函数,原型是:

    def __init__(self, fget=None, fset=None, fdel=None, doc=None): 
        pass
使用方法1:
class Test(object): def __init__(self): self._value = None def getx(self): return self._value def setx(self,value): self._value = value X = property(getx,setx) if __name__ == '__main__': t = Test() t.X = 5 print t.X 这样可以通过X访问和设置Test的私有属性_value.
使用方法2: class Student(object): @property def score(self): return self._score @score.setter def score(self, value): if not isinstance(value, int): raise ValueError('score must be an integer!') if value < 0 or value > 100: raise ValueError('score must between 0 ~ 100!') self._score = value if __name__ == '__main__': s = Student() s.set_score(60) print s.get_score() 这样可以通过访问类中方法当做属性来访问,这样也可以保护私有属性,还能在设置 属性的时候进行检测



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值