这是我要解决的一个非常简单的示例:
class Test(object):
some_dict = {Test: True}
问题是我无法在 Test 仍在定义时引用它
通常,我会这样做:
class Test(object):
some_dict = {}
def __init__(self):
if self.__class__.some_dict == {}:
self.__class__.some_dict = {Test: True}
但我从不创建此类的实例。它实际上只是一个容纳一组相关函数和数据的容器(我有几个这样的类,并且我传递对它们的引用,因此Test 必须是它自己的类)
所以我的问题是,在定义它时我怎么能引用 Test ,或者在定义类后是否有类似于__init__
get 的东西?如果可能的话,我想self.some_dict = {Test: True}
留在类定义中。到目前为止,这是我知道如何做到这一点的唯一方法:
class Test(object):
@classmethod
def class_init(cls):
cls.some_dict = {Test: True}
Test.class_init()