]> granicus.if.org Git - python/commit
Add rational.Rational as an implementation of numbers.Rational with infinite
authorJeffrey Yasskin <jyasskin@gmail.com>
Tue, 15 Jan 2008 07:46:24 +0000 (07:46 +0000)
committerJeffrey Yasskin <jyasskin@gmail.com>
Tue, 15 Jan 2008 07:46:24 +0000 (07:46 +0000)
commitd7b00334f3cbf7a802e875238b9f2bd95e190436
tree0324043740339278109491f3c7afef3be6b1a425
parentca9c6e433c6637352eecbe3432786a1ae9bec1de
Add rational.Rational as an implementation of numbers.Rational with infinite
precision. This has been discussed at http://bugs.python.org/issue1682. It's
useful primarily for teaching, but it also demonstrates how to implement a
member of the numeric tower, including fallbacks for mixed-mode arithmetic.

I expect to write a couple more patches in this area:
 * Rational.from_decimal()
 * Rational.trim/approximate() (maybe with different names)
 * Maybe remove the parentheses from Rational.__str__()
 * Maybe rename one of the Rational classes
 * Maybe make Rational('3/2') work.
Demo/classes/Rat.py [deleted file]
Doc/library/numeric.rst
Doc/library/rational.rst [new file with mode: 0644]
Lib/numbers.py
Lib/rational.py [new file with mode: 0755]
Lib/test/test_rational.py [new file with mode: 0644]