当前位置:  开发笔记 > 编程语言 > 正文

Make子类有自己的class属性

如何解决《Make子类有自己的class属性》经验,为你挑选了0个好方法。

我上课了 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

但是,这不起作用,因为objectsA和之间共享B,并且我希望每个子类Generic都有自己的对象.

如何在不必键入objects = dict()每个子类的情况下实现此目的?

我倾向于说这是一个需要元类的传统情况(这会增加objects每个新类); 是这种情况,还是有更简单的选择?

推荐阅读
Life一切安好
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有