@Kelleam
Начинающий программист

Как сделать свойство объекта используемым по умолчанию в Python как в VBA?

Допустим, мне нужно вычислить А = Б + В (операции могут быть произвольные), где А, Б и В - объекты одного класса с множеством свойств и методов. Я хочу, чтобы в выражении выше были прочитаны значения из свойства Value объектов Б и В, были вычислены в новое значение, которое было бы присвоено свойству Value объекта А. При этом обращение к другим свойствам и методам производилось бы как обычно через точку. Мне это необходимо для осуществления наглядности переменных простых (базовых) типов в сложных выражениях. В VBA этого можно добиться специальным атрибутом свойства объекта, порожденного от класса.
  • Вопрос задан
  • 54 просмотра
Решения вопроса 1
Vindicar
@Vindicar
RTFM!
Магические методы помогут.
Это не "свойство по умолчанию", а скорее "определение смысла операции для данного объекта", но итоговый результат будет примерно тот же.
Также можно использовать методы __int__(), __float__() и __complex__() чтобы прозрачно преобразовать объект в число. Но обычно __add__() сотоварищи куда практичнее.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы