您可以使用type动态创建一个新类,然后实例化它。像这样:
>>> t = type('test', (object,), {})()>>> t<__main__.test at 0xb615930c>要键入的参数是:类名,基类的元组和对象的字典。可以包含函数(对象的方法)或属性。
您实际上可以将第一行缩短为
>>> t = type('test', (), {})()>>> t.__class__.__bases__(object,)因为默认情况下,type创建从对象继承的新样式类。
type在Python中用于元编程。
但是,如果您只想创建对象的实例。然后,只需创建它的一个实例。就像lejlot暗示的那样。
像这样创建一个新类的实例有一个重要的区别,可能有用。
>>> a = object()>>> a.whoops = 1Traceback (most recent call last): File "<stdin>", line 1, in <module>AttributeError: 'object' object has no attribute 'whoops'
如:
>>> b = type('', (), {})()>>> b.this_works = 'cool'>>>


