Я хочу получить конкретный экземпляр класса в пространстве имен класса.В C # это будет выглядеть так:
public struct Foo
{
public readonly static Bar = new Foo();
}
Единственная идея, которую я имею, - назначить экземпляр сразу после определения класса (monkeypatch):
class Foo:
def __init__(self, spam):
self.spam = spam
Foo.bar = Foo(42)
Но я хочу предоставитьэкземпляр в определении класса, например:
class Foo:
...
bar = Foo(42)
и интерфейс, подобный следующему:
from foo import Foo
bar = Foo.bar
Последняя строка в определении дает синтаксическую ошибку, поскольку Foo еще не определен.Есть ли способ преодолеть это ограничение, кроме класса monkeypatching?