python动态构建类(类似声明)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python动态构建类(类似声明)相关的知识,希望对你有一定的参考价值。

对于类实例的动态构建,那是非常的简单。可要在代码中动态的构建类,然后该类还能够被使用,那得多么的强大呀。

 

在Python中,内建的__builtin__提供了一个type的方法,用该方法可以动态的构建一个类,是不是太强大了!

 

构建方法

__builtin__.type(name, bases, dct)

 

name: 类名

bases: 一个tuple,父类(支持多重继承,所以用tuple)

dct:一个dict类型,用来作为类的初始化元素。

 

比方

class_a = __builtin__.type(‘a‘, (object,), {})

 

这时就创建了一个类a的类型。

 

 

用处:

       在需要不同的派生类实现不同的功能,而这些功能又是在框架中实现的,这个时候就可能非常有用了。

       另一个就是与其他的框架做一个代理类的功能,因为动态实现,所以使得代理变得非常简单。

 

 于是乎,任何从type中继承的metaclass,也可以进行上面的方式来构建一个类。

以上是关于python动态构建类(类似声明)的主要内容,如果未能解决你的问题,请参考以下文章

Python中动态创建类实例

细说python类2——类动态添加方法和slots(转)

使用C语言为python编写动态模块--在C中实现python中的类

什么是Python???

Python中类的声明,使用,属性,实例属性,计算属性及继承,重写

Python笔记 · Python语言的“动态性”