方程式のテキスト入力を取り、それを定積分として評価するのに苦労しています。に渡す呼び出し可能な関数が必要scipy.integrate
です。
eq = "x**2"
func = lambda x: eq
func(2)
# outputs:
# x**2
# but if I:
func = lambda x: x**2
func(2)
# outputs:
# 4
Not sure, but maybe you are looking for
eq = "x**2"
func = eval("lambda x: " + eq)
Note that using eval()
is dangerous if eq
is from an untrusted source (e.g. user input).
eq を文字列として扱わずにコードとして実行するには、eval を使用する必要があります。
eq = "x**2"
func = lambda x: eval(eq)
func(2)
# outputs:
# 4