搬自:https://www.liaoxuefeng.com/wiki/1016959663602400/1017502538658208
目的:为避免在设置参数时,参数取值or格式不符合逻辑或设置需求,加入@property装饰器,在对实例属性操作的时候,自动检查该属性是否在合理范围内;
优势:使用传统的函数可以对属性进行检查,但调用过于繁琐,装饰器可以很好地解决这个问题;
使用方法:
class Student(object):
@property
def birth(self):
return self._birth
@birth.setter
def birth(self, value):
self._birth = value
@property
def age(self):
return 2015 - self._birth