SymPy是用于符号数学的Python库。它旨在成为功能齐全的计算机代数系统(CAS),同时保持代码尽可能的简单,以便于理解和易于扩展。SymPy完全用Python编写。SymPy仅依赖于mpmath,这是用于任意浮点算术的纯Python库,使其易于使用。
pip install sympy
SymPy定义了以下数值类型:Rational和Integer。Rational类将有理数表示为两个整数(分子和分母)对,因此Rational(1,2)表示1/2,Rational(5,2)5/2,依此类推。Integer类表示Integer号。
SymPy在后台使用mpmath,这使得可以使用任意精度算术执行计算。这样,某些特殊常量(例如exp,pi,oo(无穷大))被视为符号,并且可以任意精度求值。
# import everything from sympy module from sympy import * # you can't get any numerical value p = pi**3 print("p的值是:" + str(p)) # evalf method evaluates the expression to a floating-point number q = pi.evalf() print("q的值是:" + str(q)) # equivalent to e ^ 1 or e ** 1 r = exp(1).evalf() print("r的值是:" + str(r)) s = (pi + exp(1)).evalf() print("s的值是:" + str(s)) rslt = oo + 10000 print("rslt的值是:" + str(rslt)) if oo > 9999999 : print("True") else: print("False")
输出结果
p的值是:pi**3 q的值是:3.14159265358979 r的值是:2.71828182845905 s的值是:5.85987448204884 rslt的值是:oo True