2008-11-30 33 views

回答

8

SymPy是一个完全用Python编写的符号数学库,并且对有理数有完全支持。从tutorial

>>> from sympy import * 
>>> a = Rational(1,2) 

>>> a 
1/2 

>>> a*2 
1 

>>> Rational(2)**50/Rational(10)**50 
1/88817841970012523233890533447265625 

还有GMP的Python(GMPY)的,而不是纯Python,可能是更有效的。

+0

谢谢。 SymPy的Rational很好,如果它与图书馆的其他部分交织在一起的话。 – Constantin 2008-11-30 21:42:34

2

一件事是尝试从Python 2.5的维护分支演示文件夹Rat.py。如果我理解正确,那就是2.6 fractions的爸爸。这是一个没有依赖关系的单一模块。

>>> from Rat import rat 
>>> rat(1)/rat(3) 
Rat(1,3) 
>>> rat(1, 3) ** 2 
Rat(1,9) 

UPDATE:不,fractions.py是我的任务快约2.5倍。