我正在尝试将字符串转换为 SymPy 表达式。我试过sympify()
,parse_expr()
但都返回错误。如何使用替代方法纠正这些错误或解决它们?我正在使用 Python 3.4。
from sympy import *
s = 'C+O*2'
expr = sympify(s)
from sympy.parsing.sympy_parser import parse_expr
s = 'C+O*2'
expr = parse_expr(s)
这两个函数都返回以下错误:
File "C:\...\sympy\core\mul.py", line 182, in flatten
r, b = b.as_coeff_Mul()
TypeError: as_coeff_Mul() missing 1 required positional argument: 'self'
正如symify的文档所解释的那样:
[T]he
O
被解释为 Order 对象(与系列一起使用),如果使用不当会引发错误[.]
它提出了一些解决方法,我更喜欢使用本地冲突:
>>> from sympy.abc import _clash1
>>> sympify("C+O*2", locals=_clash1)
C + 2*O
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句