美文网首页
python元类编程(1)

python元类编程(1)

作者: TheRightPath1 | 来源:发表于2020-02-02 15:02 被阅读0次

1. property动态属性

@property装饰器可以把一个类函数变成一个属性描述符, 能够像访问类的属性一样访问该函数
代码实例

class Person(object):

    def __init__(self, age, name):
        self._age = age
        self.name = name

    @property
    def age(self):
        return 10


if __name__ == '__main__':
    p = Person(20, '小明')
    print(p._age)
    print(p.age)

运行结果

20
10

2. 使用@setter为动态属性赋值

@动态属性名.setter装饰后的函数可以通过属性赋值的方式来给动态属性赋值
代码实例

class Person(object):

    def __init__(self, age, name):
        self._age = age
        self.name = name

    @property
    def age(self):
        return 10

    @age.setter
    def age(self, value):
        self._age = value


if __name__ == '__main__':
    p = Person(20, '小明')
    p.age = 30
    # 通过直接赋值的方式来调用age方法为_age属性赋值
    print(p._age)
    print(p.age)

运行结果

30
10

相关文章

  • python元类编程(1)

    1. property动态属性 @property装饰器可以把一个类函数变成一个属性描述符, 能够像访问类的属性一...

  • python元编程详解

    注:采转归档,自己学习查询使用 python元编程详解(1)python元编程详解(2)python元编程详解(3...

  • python 元类编程(1) Property

    有时候,我们希望对对象的属性有更强的控制:比如希望某个值在一定的范围内(比如温度,年龄等),或者希望赋值的时候要是...

  • python元类编程

    1.__new__和__init__区别

  • Python类元编程

    1. 什么是类元编程 类元编程是指动态地创建或定制类,也就是在运行时根据不同的条件生成符合要求的类,一般来说,类元...

  • 2015.4.15

    晴 学习内容 1.python 廖雪峰python教程面对对象高级编程部分,剩下定制类和元类还没看 2.计算机组成...

  • python元编程详解

    一、元编程的概念 元编程依赖于python的一个叫做元类的概念。元类就是当你的某段代码在被执行的过程中,另外一段代...

  • Python进阶7

    元类编程 Python属性函数 引言 Python中我们对于自己设置的类,尽量要使其属性私有化,获得更好的封装性。...

  • python元类编程(3)

    1. new方法和init方法的区别 new放法用来控制对象的生成过程,是在对象生成之前调用。该方法的第一个参数是...

  • python元类编程(4)

    1.如何在python中动态地创建类 方法一 :通过传入的参数进行判断生成类代码实例 运行结果 但该方法麻烦不灵活...

网友评论

      本文标题:python元类编程(1)

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