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

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

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

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

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