当给定 x 和 y 值时,我试图求解 r 的方程。为此,我使用 sympy 的求解功能。我的代码是
import numpy as np
import matplotlib.pyplot as plt
from sympy import solve
from sympy import Symbol
from sympy import acos,sin
x=2
y=-2
r=Symbol("r",real=True)
solve(r(acos(1.0-(y/r)))-sin(acos(1.0-(y/r)))-x)
当我运行代码时,它给了我错误
'Symbol' object is not callable
line 10, in <module>
solve(r(acos(1.0-(y/r)))-sin(acos(1.0-(y/r)))-x)
我导入 numpy 和 matplotlib 的原因是我稍后会在代码中使用它们。谢谢你的帮助。
最佳答案
该错误会引导您寻找要查找的内容:正在调用的符号。在 Python 语法中,这是一个符号,后跟一对括号,括号之间有一个或多个参数。您可能打算在表达式的第一个参数中乘以 r
:
>>> solve(r(acos(1.0-(y/r)))...
^__make that r*acos(1.0-(y/r))...
在这些情况下,突出显示匹配括号的编辑器(例如 repl.it 上的 Python 代码在线编辑器)可能会有所帮助。括号要么是分组,要么是在 Python 名称后面时充当传递给函数的参数的分隔符。
关于python - sympy错误 'Symbol'对象不可调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59239727/