+-
Python使用sympy解决三次方程
我试图用sympy解决方程时遇到问题.
某些变量具有指定的特定值.
我想解决b,c和d的等式.
这是我的尝试:

from random import randint
import sympy
from sympy.abc import b,c,d,B,C,r,x

B=10
C=20
r=123

# Equation: x^3+b*x^2+c*x+d=x^3+(B−r)x^2+(C−B*r)x−C*r
equation = sympy.Eq(x**3+b*x**2+c*x+d,x**3+(B−r)*x**2+(C−B*r)*x−C*r)

print(sympy.solve(equation,"b"))
print(sympy.solve(equation,"c"))    
print(sympy.solve(equation,"d"))

Python打印出以下错误:

    [user@user Python Scripts]$python polygen.py 
  File "polygen.py", line 10
    equation = sympy.Eq(x**3+b*x**2+c*x+d,x**3+(B−r)*x**2+(C−B*r)*x−C*r)
                                                  ^
SyntaxError: invalid character in identifier

我错过了什么?

最佳答案
你的角色出了点问题.由于某种原因,它不是常规角色,而python也没有认出它.我在机器上用连字符替换了所有的减号,它的工作原理如下:

from random import randint
import sympy
from sympy.abc import b,c,d,B,C,r,x

B=10
C=20
r=123

# Equation: x^3+b*x^2+c*x+d=x^3+(B−r)x^2+(C−B*r)x−C*r
equation = sympy.Eq(x**3+b*x**2+c*x+d,x**3+(B-r)*x**2+(C-B*r)*x-C*r)

print(sympy.solve(equation,"b"))
print(sympy.solve(equation,"c"))
print(sympy.solve(equation,"d"))

我不确定错误的标志是什么样的字符:

a = 2-2在我的机器上不起作用

但是a = 2-2

点击查看更多相关文章

转载注明原文:Python使用sympy解决三次方程 - 乐贴网