>>> class Rectangle(object): ... @property ... def area(self): ... return self.length * self.width ... >>> r = Rectangle() >>> r.length, r.width = 100, 500 >>> r.area 50000 >>> class Rectangle2(Rectangle): ... def area2(self): ... return self.length * self.width ... >>> r = Rectangle2() >>> r.length, r.width = 100, 500 >>> r.area 50000 >>> r.area2 > >>> r.area2() 50000