From: Raymond Hettinger Date: Thu, 24 Jan 2008 19:30:19 +0000 (+0000) Subject: Add support for int(r) just like the other numeric classes. X-Git-Tag: v2.6a1~424 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=5b0e27e50d33f33515f31ff6fec123f5e2be9d73;p=python Add support for int(r) just like the other numeric classes. --- diff --git a/Lib/rational.py b/Lib/rational.py index 60cd129946..6824f4a61a 100755 --- a/Lib/rational.py +++ b/Lib/rational.py @@ -376,6 +376,8 @@ class Rational(RationalAbc): else: return a.numerator // a.denominator + __int__ = __trunc__ + def __floor__(a): """Will be math.floor(a) in 3.0.""" return a.numerator // a.denominator diff --git a/Lib/test/test_rational.py b/Lib/test/test_rational.py index 0f0a48de3a..3242e43886 100644 --- a/Lib/test/test_rational.py +++ b/Lib/test/test_rational.py @@ -160,6 +160,7 @@ class RationalTest(unittest.TestCase): def testConversions(self): self.assertTypedEquals(-1, trunc(R(-11, 10))) + self.assertTypedEquals(-1, int(R(-11, 10))) self.assertTypedEquals(-2, R(-11, 10).__floor__()) self.assertTypedEquals(-1, R(-11, 10).__ceil__()) self.assertTypedEquals(-1, R(-10, 10).__ceil__())