type()方法作为元类,用来创建类:
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})