Clean-up and speed-up code by accessing numerator/denominator directly. There's no reason to enforce readonliness
diff --git a/Lib/rational.py b/Lib/rational.py
index e34a713..60cd129 100755
--- a/Lib/rational.py
+++ b/Lib/rational.py
@@ -94,7 +94,7 @@
"""
- __slots__ = ('_numerator', '_denominator')
+ __slots__ = ('numerator', 'denominator')
# We're immutable, so use __new__ not __init__
def __new__(cls, numerator=0, denominator=1):
@@ -134,8 +134,8 @@
raise ZeroDivisionError('Rational(%s, 0)' % numerator)
g = _gcd(numerator, denominator)
- self._numerator = int(numerator // g)
- self._denominator = int(denominator // g)
+ self.numerator = int(numerator // g)
+ self.denominator = int(denominator // g)
return self
@classmethod
@@ -208,14 +208,6 @@
result = new
return result
- @property
- def numerator(a):
- return a._numerator
-
- @property
- def denominator(a):
- return a._denominator
-
def __repr__(self):
"""repr(self)"""
return ('Rational(%r,%r)' % (self.numerator, self.denominator))