3
SymPy documentation on solve
によれば、最初の引数があることができる。ゼロでなければならないSymPy:式がリストに含まれていると、 `solve`が失敗することがあるのはなぜですか?
- 単一Exprに又はポリは、
- 平等
- 一方の関係式またはブール
- 反復可能上記のうちの1つ以上
ただし、時にはsolve(equation, x)
またはの場合は違いがあります。 [equation]
はequation
の繰り返しでなければなりません。そして、なぜそれが時々問題になるのか、本当に混乱しています。
あなたは、次のMCVEに私の問題を見ることができます:
from sympy import *
x, y = symbols("x y")
def test_sympy_solve(equation):
print("For given equation", equation, "...")
print("... solve(equation, x) finds", len(solve(equation, x)), "solutions")
print("... solve([equation], x) finds", len(solve([equation], x)), "solutions\n")
test_sympy_solve(Eq((x + 1)**2 - 1, y))
test_sympy_solve(Eq((x + 1)**3 - 1, y))
出力は次のとおりです。
For given equation Eq((x + 1)**2 - 1, y) ...
... solve(equation, x) finds 2 solutions
... solve([equation], x) finds 2 solutions
For given equation Eq((x + 1)**3 - 1, y) ...
... solve(equation, x) finds 3 solutions
... solve([equation], x) finds 0 solutions
Eq((x + 1)**2 - 1, y)
はEq((x + 1)**3 - 1, y)
にはない2つの解に両方の時間を取得します。何が起きてる?
私はこれをSymPyのバグと見なします。 [issue tracker](https://github.com/sympy/sympy/issues/new)で問題を開くことはできますか? – asmeurer
@asmeurerありがとう、完了[#12326](https://github.com/sympy/sympy/issues/12326) – Jayjayyy