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