带你了解Python中metaclass实现
问题解答发布日期:2021-02-19 14:22:12          

带你了解Python中metaclass实现.png

目前,身边越来越多的朋友都再学习Python,今天就给大家分享一下有关Pythonmetaclass方式实现。

 

"""

1.类由type创建,创建类时,type__init__方法自动执行,类() 执行type__call__方法(类的__new__方法,类的__init__方法)

2.对象由类创建,创建对象时,类的__init__方法自动执行,对象()执行类的 __call__ 方法

"""

例子:

 

class Foo:

    def __init__(self):

        pass

 

    def __call__(self, *args, **kwargs):

        pass

 

obj = Foo()

# 执行type__call__ 方法,调用 Foo类(是type的对象)的 __new__方法,用于创建对象,然后调用 Foo类(是type的对象)的 __init__方法,用于对对象初始化。

 

obj()    # 执行Foo__call__ 方法   

 

以上就是关于Pythonmetaclass方式实现的全部内容了,希望能够帮助到大家更好的学习Python

文章部分内容源于网络,联系侵删*


在线
咨询

售前客服

即刻响应,有问必答

售后客服

永久免费售后服务

太阳大客户经理

18652201770
微信客服
免费
套餐
意见
反馈
置顶