У меня есть класс вроде:
class MyClass:
Foo = 1
Bar = 2
Всякий раз, когда вызывается MyClass.Foo
или MyClass.Bar
, мне нужен специальный метод, который нужно вызвать до того, как будет возвращено значение. Возможно ли это в Python? Я знаю, что это возможно, если я создаю экземпляр класса, и я могу определить свой собственный метод __getattr__
. Но мой scnenario предполагает использование этого класса как такового, не создавая его.
Также мне нужен настраиваемый метод __str__
, который вызывается при вызове str(MyClass.Foo)
. Предоставляет ли Python такую возможность?