美文网首页python基础
property 装饰器

property 装饰器

作者: 徐子鑑 | 来源:发表于2017-09-22 18:51 被阅读8次

    @property 装饰器:把一个方法变成属性调用

    例:

    class Student(object):
    
        @property   
        def birth(self):   #定义属性birth,调用时获取属性的值
            return self._birth
    
        @birth.setter    #可以直接用方法更改birth属性的值
        def birth(self, value):
            self._birth = value
    
        @property       #只可以获取,不能修改
        def age(self):
            return 2015 - self._birth
    

    __str__()返回用户看到的字符串

    __repr__()返回程序开发者看到的字符串

    例:

    class Student(object):
        def __init__(self, name):
            self.name = name
        def __str__(self):
            return 'Student object (name=%s)' % self.name
        __repr__ = __str__  #偷懒写法,不然还要写个def __repr___
    

    相关文章

      网友评论

        本文标题:property 装饰器

        本文链接:https://www.haomeiwen.com/subject/ccofextx.html