From fc52fe0fda92cb95f6c69c8abe48a3127ed0c225 Mon Sep 17 00:00:00 2001 From: Cacahuete Date: Wed, 2 Dec 2020 23:01:17 +0100 Subject: [PATCH] circle: added comments related to TH's solution; removed calls to self._radius that bypass setter call. --- circle/circle.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/circle/circle.py b/circle/circle.py index 29ea74e..c9af766 100644 --- a/circle/circle.py +++ b/circle/circle.py @@ -2,6 +2,7 @@ from math import pi class Circle: + # Missing docstring def __init__(self, radius=1): self.radius = radius @@ -20,18 +21,19 @@ class Circle: @property def diameter(self): - return 2 * self._radius + return 2 * self.radius @diameter.setter def diameter(self, diameter): if diameter < 0: raise ValueError("Diameter cannot be negative") - self._radius = diameter / 2 + self.radius = diameter / 2 @property def area(self): - return pi * self._radius ** 2 + return pi * self.radius ** 2 @area.setter def area(self, area): + # Not required: property without setter will raise AttributeError when set raise AttributeError("Can't set attribute")