根据廖雪峰教程自己学习。
class Student(object):
@property
def score(self):
return self._score
@score.setter
def score(self,value):
try:
if not isinstance(value,int):
raise TypeError('不是int类型')
if value<0 or value>100:
raise ValueError('数值应该在0-100中间取值')
except ValueError as e:
print('ValueError:',e)
except TypeError as e:
print('TypeError:',e)
self._score=value
- @property的使用简洁体现在:
s1=Studnet()
赋值的时候直接用.属性名
就可以
如:s1.score=90
。 为了实现上面的目的,才有了property的用法。
网友评论