我是sympy
的新手,无法弄清楚如何关联符号并打印该关系。
import sympy
U, R, I = sympy.symbols('U, R, I')
U = R * I
sympy.simplify(R * I)
我想打印U
而不是R * I
。
在这里,我正在覆盖U
,并且正在寻找一种定义符号之间的关系并打印该关系的方法。这可能吗?
感谢您的帮助:)
答案 0 :(得分:1)
请阅读https://docs.sympy.org/latest/tutorial/gotchas.html。您会混淆符号和Python变量。编写U = R * I
时,将覆盖上一行中定义的符号U
。它成为指向表达式R * I
的Python变量。特别要注意的是,Python变量的名称与SymPy使用的符号变量名称无关。您可能还写了expr = R * I
并使用expr
代替了U
。 SymPy无法“知道” R * I
在名为“ U”或“ expr”的Python变量中。
如果您希望U
是一个符号变量,则应采用这种方式。然后,您可以使用Eq
来表示符号相等:
>>> U, R, I = sympy.symbols('U, R, I')
>>> Eq(U, R*I)
Eq(U, I*R)