Python学习之内建属性

1.__dir__:对象中的内建属性和方法:dir(obj);

2.常用的属性:

    __init__:构造初始化函数;

    __new__:⽣成实例所需属性

    __del__:析构, del删除实例.

    __dict__:实例中的自定义属性

    __getattribute__:属性访问拦截器.

3. __getattribute__(属性访问拦截器)中的使用:

    

class Person(object):
    def __init__(self,subject1):
        self.subject1 = subject1
        self.subject2 = 'asd'
    #属性访问时 拦截器 , 打log
    def __getattribute__(self, item):
        if item == 'subject1':
            print('log subject1')
            return 'redirect python'
        else:
            return object.__getattribute__(self,item)


a = Person('python')
print(a.subject1)
print(a.subject2)

    

    

posted @ 2021-05-01 22:19  搬砖的孟达  阅读(9)  评论(0)    收藏  举报  来源