]> granicus.if.org Git - python/commitdiff
Clean-up and speed-up code by accessing numerator/denominator directly. There's...
authorRaymond Hettinger <python@rcn.com>
Thu, 24 Jan 2008 18:05:54 +0000 (18:05 +0000)
committerRaymond Hettinger <python@rcn.com>
Thu, 24 Jan 2008 18:05:54 +0000 (18:05 +0000)
Lib/rational.py

index e34a7134407aa59404a6c332d91206f80f3f316d..60cd129946b5aa5cd35b3360b2c9819da93fda25 100755 (executable)
@@ -94,7 +94,7 @@ class Rational(RationalAbc):
 
     """
 
-    __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 @@ class Rational(RationalAbc):
             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 @@ class Rational(RationalAbc):
             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))