ここではsympyライブラリを使った代数方程式を説明します
まだsympyをインストールをしてなければ
まずpipを使ってpython3にsympyをインストールしてください
ファイルの先頭に
まだsympyをインストールをしてなければ
まずpipを使ってpython3にsympyをインストールしてください
pip install sympyそしてsympyを使うには
ファイルの先頭に
import sympy as syと書いてください
python3で代数方程式を扱うには
変数をそのまま宣言していてはできず
symbols関数を使って代数の変数として宣言する必要があります
また方程式もEq関数を使って宣言する必要があります(省略可能)
変数をそのまま宣言していてはできず
symbols関数を使って代数の変数として宣言する必要があります
また方程式もEq関数を使って宣言する必要があります(省略可能)
方程式を宣言するにはEq関数を使います
Eq(左辺の方程式, 右辺の方程式)
例えば
左辺の数値が0になる場合であればEq関数を省略して書けます
省略できる場合は省略して書くのが一般的です
Eq(左辺の方程式, 右辺の方程式)
例えば
x^2 + 1 = 10という式を宣言したければ
y = sy.Eq(x**2 + 1, 10)となります
左辺の数値が0になる場合であればEq関数を省略して書けます
省略できる場合は省略して書くのが一般的です
0 = x^2 - 25の式をy=の式として表したい場合は
y = x**2 - 25と書けます
代入にはsubs関数を使います
subs(変数,値)複数の場合は次の形にして渡します
subs([(変数1,値),(変数2,値)])x^2+y+1の式にx=3,y=5を代入する
e3 = x**2 + y + 1 print(e3.subs([(x, 3),(y,5)])) >>15
solveset関数は方程式の解を求めれます
公式にはsolveset関数を推奨しています)
例えば次のような方程式であれば
y = 2 * x + 6
y=0の場合のxの値を求めます
この場合xは-3が解になります
解は複数ある場合もあります
solveset(方程式, 解きたい変数)(なお似たものにsolve関数もありますが、solve関数は一部のケースでは正しく答えれない場合があるので
公式にはsolveset関数を推奨しています)
例えば次のような方程式であれば
y = 2 * x + 6
y=0の場合のxの値を求めます
この場合xは-3が解になります
解は複数ある場合もあります
a1 = x**2 - 2*x - 15 print(sy.solveset(a1, x)) >>[-3,5]方程式に変数が1つしかない場合は第2引数を省略して書くこともできます
a1 = x**2 - 2*x - 15 print(sy.solveset(a1)) >>[-3,5]
コメントをかく