#python #sympy
#python #sympy
Вопрос:
Как использовать sympy.sympify для двух или более переменных?
Этот код с одной переменной работает.
aa = sympify("4*x**2 5*x - 6 > 1 , x > 0.8")
print(solve(aa))
>> (0.838087488839953 < x) amp; (x < oo)
Но этот код с двумя переменными не работает.
aa = sympify("x y = 8 , 2x - y < 5 ")
print(solve(aa))
>> sympy.core.sympify.SympifyError: Sympify of expression 'could not parse 'x y = 8 , 2x - y < 5 ''
failed, because of exception being raised:
SyntaxError: invalid syntax (<string>, line 1)
Я хотел бы решать уравнения или неравенства, включающие две или более переменных, со строковым вводом типа «4 x**2 5 x — 6> 1, x> 0,8″ вместо символов sympy. Возможно ли решить линейные уравнения с двумя переменными с помощью sympy sympify?
Комментарии:
1. Игра с вашей проблемной строкой, которую я нахожу
sympify("x y = 8")
, приводит к синтаксической ошибке.sympy
во введении много говорится о ‘=’ gotcha. ‘2x’ во втором выражении также является проблемой, «2 * x-y<5» разбирается нормально. Синтаксическую ошибку выдают не две переменные.2. Спасибо hpaulj. Но я все еще не могу использовать sympy для решения многомерных неравенств и буду использовать пакет PuLP для многомерных неравенств.