Lines Matching defs:Fraction

13 __all__ = ['Fraction', 'gcd']
44 class Fraction(Rational):
47 In the two-argument form of the constructor, Fraction(8, 6) will
50 defaults to 1 so that Fraction(3) == 3 and Fraction() == 0.
69 """Constructs a Fraction.
77 >>> Fraction(10, -8)
78 Fraction(-5, 4)
79 >>> Fraction(Fraction(1, 7), 5)
80 Fraction(1, 35)
81 >>> Fraction(Fraction(1, 7), Fraction(2, 3))
82 Fraction(3, 14)
83 >>> Fraction('314')
84 Fraction(314, 1)
85 >>> Fraction('-35/4')
86 Fraction(-35, 4)
87 >>> Fraction('3.1415') # conversion from numeric string
88 Fraction(6283, 2000)
89 >>> Fraction('-47e-2') # string may include a decimal exponent
90 Fraction(-47, 100)
91 >>> Fraction(1.47) # direct construction from float (exact conversion)
92 Fraction(6620291452234629, 4503599627370496)
93 >>> Fraction(2.25)
94 Fraction(9, 4)
95 >>> Fraction(Decimal('1.47'))
96 Fraction(147, 100)
99 self = super(Fraction, cls).__new__(cls)
109 value = Fraction.from_float(numerator)
115 value = Fraction.from_decimal(numerator)
124 raise ValueError('Invalid literal for Fraction: %r' %
162 raise ZeroDivisionError('Fraction(%s, 0)' % numerator)
172 Beware that Fraction.from_float(0.3) != Fraction(3, 10).
207 """Closest Fraction to self with denominator at most max_denominator.
209 >>> Fraction('3.141592653589793').limit_denominator(10)
210 Fraction(22, 7)
211 >>> Fraction('3.141592653589793').limit_denominator(100)
212 Fraction(311, 99)
213 >>> Fraction(4321, 8765).limit_denominator(10000)
214 Fraction(4321, 8765)
241 return Fraction(self)
254 bound1 = Fraction(p0+k*p1, q0+k*q1)
255 bound2 = Fraction(p1, q1)
271 return ('Fraction(%s, %s)' % (self._numerator, self._denominator))
291 Fraction, that means that we define __add__ and __radd__ as:
296 if isinstance(other, (int, long, Fraction)):
297 return Fraction(self.numerator * other.denominator +
313 return Fraction(self.numerator * other.denominator +
324 Fraction. I'll refer to all of the above code that doesn't
325 refer to Fraction, float, or complex as "boilerplate". 'r'
326 will be an instance of Fraction, which is a subtype of
327 Rational (r : Fraction <: Rational), and b : B <:
330 1. If B <: Fraction, int, float, or complex, we handle
332 2. If Fraction falls back to the boilerplate code, and it
339 3. If B <: Fraction, Python tries B.__radd__ before
340 Fraction.__add__. This is ok, because it was
341 implemented with knowledge of Fraction, so it can
346 didn't know about Fraction in its implementation, and that it
361 if isinstance(b, (int, long, Fraction)):
389 return Fraction(a.numerator * b.denominator +
397 return Fraction(a.numerator * b.denominator -
405 return Fraction(a.numerator * b.numerator, a.denominator * b.denominator)
411 return Fraction(a.numerator * b.denominator,
463 return Fraction(a._numerator ** power,
466 return Fraction(a._denominator ** -power,
482 return Fraction(a.numerator, a.denominator) ** b
490 """+a: Coerces a subclass instance to Fraction"""
491 return Fraction(a._numerator, a._denominator)
495 return Fraction(-a._numerator, a._denominator)
499 return Fraction(abs(a._numerator), a._denominator)
598 if type(self) == Fraction:
603 if type(self) == Fraction: