「静的クラス属性」のようなJavaを使用して、Pythonでシングルトンクラスを作成したいと思います。Python シングルトンに関するいくつかの投稿を読みましたが、単純なモジュールをシングルトンとして使用する以外に解決策が見つかりません。
このコード ( PEP318 ) を拡張して、関数からアクセスできる「静的クラス属性」で使用する方法はありますか?
def singleton(cls):
instances = {}
def getinstance():
if cls not in instances:
instances[cls] = cls()
return instances[cls]
return getinstance
@singleton
class MyClass:
...