python - SymPy:如何创建符号 lambda 函数?
问题描述
例如我有这个表达式:
x = Symbol('x')
f = sin(x) * x
我希望以下代码工作:
>>> a = Symbol('a')
>>> f(a)
TypeError: 'Mul' object is not callable
我可以把这个表达式变成一个可以处理数字的 lambda 函数:
>>> f = lambdify(x, f)
>>> f(10)
-5.440211108893697
但它不适用于符号:
>>> f = lambdify(x, f)
>>> f(a)
TypeError: loop of ufunc does not support argument 0 of type Symbol which has no callable sin method
我知道 *.subs 方法,但我对此表示法感兴趣:
>>> a = Symbol('a')
>>> f(a)
怎么做?
解决方案
推荐阅读
- opencv - OpenCV Java SimpleBlobDetector 未检测到任何关键点
- python - 如何在没有列表的情况下填充我的字典?
- php - 如何在php中分配和释放内存?
- excel - 如果单元格包含确切的文本,则显示
- javascript - 使用 axios 而不是 fetch 在 React 中出现 Cors 错误
- mongodb - 如何编写mongo管道
- apache-spark - GCP 上的 PySpark PandasUDF - 内存分配
- c# - 错误 :: 找不到方法:'System.IO.Compression.ZipArchive
- javascript - 如何在 Javascript 而不是 URL 的另一个 index.html 网页中以文本格式显示对象属性?
- gluon - 找不到 GraalVM 安装目录