@property使用

根据廖雪峰教程自己学习。

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的用法。

你可能感兴趣的:(@property使用)