Ich habe eine Klasse Generic
Make Unterklasse hat ihre eigene Klasse Attribut
class Generic:
raw_data = []
objects = dict()
und konkrete Klassen
class A(Generic):
raw_data = module.somethingA
class B(Generic):
raw_data = module.somethingB
Ich mag jeden raw_data
auf jedes objects
dict der Klasse füllen. Zu diesem , ich bin mit:
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
Dies ist jedoch nicht funktioniert, weil objects
zwischen A
und B
geteilt wird, und ich wollte jede Unterklasse von Generic
ihre eigenen Objekte haben.
Wie erreiche ich dies, ohne objects = dict()
für jede Unterklasse eingeben zu müssen?
Ich bin geneigt zu sagen, dass dies ein traditioneller Fall ist, in dem eine Meta-Klasse erforderlich ist (die jeder neuen Klasse objects
hinzufügt); Ist das der Fall oder gibt es eine einfachere Option?