Answer
t.me/python_tesstОтвет:
Set X
Get X
10
Set X
Get X
20
Объяснение:
С помощью специального механизма свойств класса можно внести корректировки в работу с оператором точки, присвоив ему собственные функции. В следующем примере представлен класс с приватным полем x, для которого написаны getter и setter. С помощью присвоения полю x специального значения функции property, получающей в качестве аргументов имена методов, можно настроить работу оператора точки согласно своим нуждам. Как видно из результатов выполнения кода, методы __get_x и __set_x работают с помощью оператора точки, вызываясь самостоятельно. Таким образом, упрощается написание кода при изменении свойств объекта, а также повышается уровень безопасности данных.
Код:
class Data: def __init__(self, x): self.__set_x(x) def __get_x(self): print("Get X") return self.__x def __set_x(self, x): self.__x = x print("Set X") x = property(__get_x, __set_x) data = Data(10) print(data.x) data.x = 20 print(data.x)