装饰器 使用@property

发布时间:2020-07-31 22:19:22 作者:alvazhao
来源:网络 阅读:431

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

@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()
推荐阅读:
  1. Python中,关于@property装饰器
  2. 装饰器类学习小结

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

python 装饰器

上一篇:cmd 导入oracle数据的dmp文件

下一篇:akka系统中停止运行任务的问题

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》