这是我的密码:
from sympy import *
from sympy.parsing.sympy_parser import parse_expr
x, y, z, t = symbols('x y z t')
print(N('abs(2)'))
它返回abs(2)
,而不是运行在Anaconda上的朱庇特笔记本上的2
。N()不是用来计算数值表达式的吗?
我认为当您给N()一个字符串时,它会自动解析,但为了防止我检查:
expr = parse_expr('abs(2)')
print(N(expr))
这再次返回abs(2)
发布于 2020-05-12 20:37:33
这个函数称为Abs
。您从parse_expr
得到的是一个任意函数,它恰好被称为abs
。
In [8]: parse_expr('f(2)')
Out[8]: f(2)
In [9]: parse_expr('abs(2)')
Out[9]: abs(2)
In [10]: parse_expr('Abs(2)')
Out[10]: 2
https://stackoverflow.com/questions/61759475
复制相似问题