@vilaugra

Как правильно реализовать __setattr__ или перегрузить оператор сравнения в Python?

У меня есть два класса: Поле и Объект. Поле содержит в себе переменную "значение" и много другого. В Объекте создается экземпляр первого класса. И мне нужно, чтобы когда я присваивал значение этой переменной (field) оно присваивалось переменной field.value (Пишу obj.field = 1, а работало obj.field.value = 1)

Я могу прописать функцию __setattr__ в Объекте. Но тогда как сделать, чтобы для других переменных этого класса присваивание работало как обычно? Или может можно как-то перегрузить оператор присваивания в классе Field?
class Field:
    value = None

class Obj:
    field = Field()
    def __setattr__(self, name, field):
        ...
  • Вопрос задан
  • 116 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

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