Sympy 是 Python 的一个代数计算库。简单来说,可以通过该库进行一些代数计算,比如构建方程,求解方程组,求解导数等等…
下面是使用 Sympy 的简单例子:
import sympy def test01(): """ 构建方程 """ # 1. 创建方程中的符号 k = sympy.Symbol("k") x = sympy.Symbol("x") b = sympy.Symbol("b") # 2. 构建方程 y = k * x + b # 3. 代入求解 y result = y.subs({"k": 10, "x": 3, "b": 5}) sympy.pprint(result) def test02(): """ 求解方程组 """ # 1. 创建方程中的符号 x = sympy.Symbol("x") y = sympy.Symbol("y") z = sympy.Symbol("z") # 2. 构建方程 f1 = 2*x - 7 - y f2 = 5*x + 3*y + 2*z - 3 f3 = 3*x + z - 7 # 3. 求解方程组 result = sympy.solve([f1, f2, f3], x, y, z) sympy.pprint(result) def test03(): """ 求导 """ # 1. 构建方程 x = sympy.Symbol("x") y = sympy.Symbol("y") z = sympy.Symbol("z") f = x**2 + 2*x + 3*y**2 + 4*z**3 # 2. 分别对 x, y, z 求导 fx = sympy.diff(f, x) fy = sympy.diff(f, y) fz = sympy.diff(f, z) sympy.pprint(fx) sympy.pprint(fy) sympy.pprint(fz) def test04(): """ 连加 """ x = sympy.Symbol("x") y = sympy.Symbol("y") z = sympy.Symbol("z") f = 2*x**2 + 3 + y + z f = sympy.summation(f, (x, 1, 100)) print(f) def test05(): """ 连乘 """ x = sympy.Symbol("x") y = sympy.Symbol("y") z = sympy.Symbol("z") f = 2 * x ** 2 + 3 + y + z f = sympy.product(f, (x, 1, 3)) print(f) if __name__ == "__main__": test05()