type()方法作为元类,用来创建类:
1 type(类名, 父类的元组(针对继承的情况,可以为空),包含属性的字典(名称和值))
以下代码可以用type()方法来创建:
class Myclass(object): pass
用type()的方式创建:
Myclass = type(‘Myclass‘, (), {})
如果有继承的情况,例如:
class MyClassChild(Myclass): pass
可以这样写:
MyClassChild = type(‘MyClassChild‘, (Myclass,), {})
如果要给类添加方法或属性的话,例如:
class Myclass(object): age = 10 def add(self, age): self.age += age
可以这样写:
def add(self, age): self.age += age Myclass = type(‘Myclass‘, (), {‘age‘: 10, ‘add‘: add})
原文:https://www.cnblogs.com/edwardX/p/10642853.html