Python基础 type元类

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python基础 type元类相关的知识,希望对你有一定的参考价值。

python元类:

type()   元类是python高阶语法. 合理的使用可以减少大量重复性的代码.

元类使用代码:

元类关键字type()  ;元类有三个参数

原型:type(‘Class‘,(object,),dict(hello=fun()))

1、class 自定义的类名称

2、(object,)是继承类,的元组,如果只有一个就写这种形势(object,);多个(object,xxxx,)

3、dict(hello=fun())  第三个参数,是一个字典等号左是 自定义的方法名,右侧是已写好的方法名,这个要注意,有参数且没有默认值的情况下,要加括号;

 

def fun():
    print(hello world!)


if __name__=="__main__":

    h = type(Hello,(object,),dict(hello=fun()))
    tc = h()
    tc.hello

 

引用:

h 相当于接收Hello类;tc = h()实例化类;tc.hello方法,调用的其实是我们定义的fun方法。

    h = type(Hello,(object,),dict(hello=fun()))
    tc = h()
    tc.hello

 

以上是关于Python基础 type元类的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Boost.Python 定义 Python 元类?

理解python元类

Python元编程元类

1104课堂小结

python面向对象--元类

python的基本元类:纯python类似物?