装饰器使用@property

转载:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/00143186781871161bc8d6497004764b398401a401d4cce000

创新互联公司专注为客户提供全方位的互联网综合服务,包含不限于网站设计、成都网站设计、两当网络推广、小程序开发、两当网络营销、两当企业策划、两当品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联公司为所有大学生创业者提供两当建站搭建服务,24小时服务热线:028-86922220,官方网址:www.cdcxhl.com

@property@XXX.setter
br/>@XXX.setter

仅使用@property,设置一个只读属性

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

使用@property后,调用函数变为函数名称的属性赋值、读取

s.score = 60 # OK,实际转化为s.set_score(60)
s.score # OK,实际转化为s.get_score()

名称栏目:装饰器使用@property
网址分享:http://myzitong.com/article/gigiod.html