Подставляя выражения в sympy - PullRequest
0 голосов
/ 15 ноября 2018

Я новичок в sympy и не могу понять, как соотносить символы и печатать это отношение.

import sympy
U, R, I = sympy.symbols('U, R, I')
U = R * I
sympy.simplify(R * I)

Я хотел бы напечатать U вместо R * I.

Здесь я перезаписываю U и ищу способ определить отношение между символами и вывести его вместо этого. Это возможно?

Спасибо за вашу помощь:)

1 Ответ

0 голосов
/ 16 ноября 2018

Пожалуйста, прочитайте https://docs.sympy.org/latest/tutorial/gotchas.html. Вы путаете символы и переменные Python. Когда вы пишете U = R * I, вы перезаписываете символ U, который вы определили в предыдущей строке. Он становится переменной Python, указывающей на выражение R * I. В частности, обратите внимание, что имя переменной Python не имеет ничего общего с именами символических переменных, используемых SymPy. Вы могли бы также написать expr = R * I и использовать expr вместо U. SymPy не может «узнать», что R * I находится в переменной Python с именем «U», «expr» или чем-то еще.

Если вы хотите, чтобы U была символической переменной, вы должны оставить это так. Затем вы можете использовать Eq для представления символического равенства:

>>> U, R, I = sympy.symbols('U, R, I')
>>> Eq(U, R*I)
Eq(U, I*R)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...