奋斗中的鱼 发表于 2023-9-16 19:43:31

python解方程?

本帖最后由 奋斗中的鱼 于 2023-9-16 19:44 编辑


isdkz 发表于 2023-9-16 19:43:39

你可以使用Python中的SymPy库来解方程。以下是一个简单的例子:

from sympy import symbols, solve

x, y = symbols('x y')
eq1 = x + y - 5
eq2 = x - y - 1
sol = solve((eq1, eq2), (x, y))
print(sol)


这个例子中,我们定义了两个方程式 eq1 和 eq2 ,然后使用 solve 函数解决这两个方程式,得到 x 和 y 的值。输出结果为 {x: 3, y: 2} ,表示 x 的值为3, y 的值为2。

你可以根据自己的需要修改方程式和变量名。

陶远航 发表于 2023-9-16 19:43:45

是的,Python可以通过多种方法解方程。以下是一些常用的方法:

1. 使用SymPy库:SymPy是一个强大的符号计算库,可以用于解方程。首先,你需要安装SymPy库(如果尚未安装)。可以使用以下命令来安装SymPy:
      pip install sympy
   
   然后,可以使用SymPy的符号变量和求解器来解方程。例如,假设要解方程x^2 + 2x - 8 = 0:
      from sympy import symbols, Eq, solve
   
   x = symbols('x')
   equation = Eq(x**2 + 2*x - 8, 0)
   solution = solve(equation, x)
   
   print(solution)# 输出解的值
   

2. 使用NumPy库:NumPy是一个用于科学计算的库,它提供了解线性和非线性方程组的函数。首先,你需要安装NumPy库(如果尚未安装)。可以使用以下命令来安装NumPy:
      pip install numpy
   
   然后,可以使用NumPy的roots函数来解方程。例如,假设要解方程x^2 + 2x - 8 = 0:
      import numpy as np
   
   coefficients =
   solution = np.roots(coefficients)
   
   print(solution)# 输出解的值
   

这些仅是解方程的两种常见方法,根据具体情况可以选择不同的方法。希望对你有所帮助!
如果问题已经解决,请设置最佳答案

奋斗中的鱼 发表于 2023-9-16 19:44:59

原来不行{:10_250:}

tommyyu 发表于 2023-9-16 19:47:39

一元5次方程及以上都没有求根公式。但是如果要求解 n 元 1 次的方程,你可以去学学线性代数。

奋斗中的鱼 发表于 2023-9-16 19:53:51

tommyyu 发表于 2023-9-16 19:47
一元5次方程及以上都没有求根公式。但是如果要求解 n 元 1 次的方程,你可以去学学线性代数。

使用线性代数来写程序吗?
python是怎么解决2、3楼的方法的?

tommyyu 发表于 2023-9-16 19:58:48

奋斗中的鱼 发表于 2023-9-16 19:53
使用线性代数来写程序吗?
python是怎么解决2、3楼的方法的?

我是这样理解的:

线性代数可以提供一种解方程的方法,而 2、3 楼中的 SymPy 库 和 Numpy 库都对该方法进行了封装。

额外减小 发表于 2023-9-16 20:07:04

tommyyu 发表于 2023-9-16 19:47
一元5次方程及以上都没有求根公式。但是如果要求解 n 元 1 次的方程,你可以去学学线性代数。

行列式是罢(您是多大了,这么强,线代不是大学的吗)

额外减小 发表于 2023-9-16 20:07:56

5次及以上用牛顿法/秦九韶法/...迭代

tommyyu 发表于 2023-9-16 20:09:50

额外减小 发表于 2023-9-16 20:07
行列式是罢(您是多大了,这么强,线代不是大学的吗)

初中,前几年翻过(大概几页)线代的书

额外减小 发表于 2023-9-16 20:13:15

tommyyu 发表于 2023-9-16 20:09
初中,前几年翻过(大概几页)线代的书

ohhhhhhhhhhhh
强神啊!
初中都开始线代了
那看来我现在得开始学拓扑了。
要不然卷不过(

额外减小 发表于 2023-9-16 20:13:59

别告诉我你大学数学课程已经学完了)

小甲鱼 发表于 2023-9-16 20:51:57

奋斗中的鱼 发表于 2023-9-16 19:44
原来不行

已经初步实现文字识别了,

建议下次改手写~

{:10_307:}

奋斗中的鱼 发表于 2023-9-16 21:32:01

小甲鱼 发表于 2023-9-16 20:51
已经初步实现文字识别了,

建议下次改手写~

可以,下次用毛笔写{:10_256:}

奋斗中的鱼 发表于 2023-9-16 21:32:33

tommyyu 发表于 2023-9-16 20:09
初中,前几年翻过(大概几页)线代的书

您初几?我初二{:10_254:}

tommyyu 发表于 2023-9-16 21:54:49

奋斗中的鱼 发表于 2023-9-16 21:32
您初几?我初二

一样{:10_297:}

小甲鱼 发表于 2023-9-17 06:42:06

奋斗中的鱼 发表于 2023-9-16 21:32
可以,下次用毛笔写

快,测试一下~

zhangjinxuan 发表于 2023-9-17 08:04:33

跟我一起念:枚举。

陶远航 发表于 2023-9-17 10:34:30

小甲鱼 发表于 2023-9-16 20:51
已经初步实现文字识别了,

建议下次改手写~

谁实现文字识别了?

奋斗中的鱼 发表于 2023-9-17 16:21:58

小甲鱼 发表于 2023-9-17 06:42
快,测试一下~

写成这个样子{:10_256:}
页: [1] 2
查看完整版本: python解方程?