これは、私が回避しようとしているものの非常に簡単な例です。
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()