我上课了 Generic
class Generic: raw_data = [] objects = dict()
和具体课程
class A(Generic): raw_data = module.somethingA class B(Generic): raw_data = module.somethingB
我想raw_data
在每个objects
类的dict中填充每一个.为此,我正在运行:
for object_type in (A, B): for data in object_type.raw_data: new_object = object_type(*data) object_type.objects[id(new_object)] = new_object
但是,这不起作用,因为objects
在A
和之间共享B
,并且我希望每个子类Generic
都有自己的对象.
如何在不必键入objects = dict()
每个子类的情况下实现此目的?
我倾向于说这是一个需要元类的传统情况(这会增加objects
每个新类); 是这种情况,还是有更简单的选择?