property()
Создаёт управляемый атрибут (свойство) класса.
Сигнатура
property(fget=None, fset=None, fdel=None, doc=None)Превращает методы в атрибут с геттером и сеттером. Обычно используется как декоратор @property.
class Circle:
def __init__(self, r):
self._r = r
@property
def area(self):
return 3.14 * self._r ** 2
c = Circle(2)
print(c.area) # 12.56 (без скобок!)