python - 使用带有 Pythonnet 的 mXparser 的构造函数错误
问题描述
我正在尝试使用 Python 中的 mXparser。它加载没有问题,但是一旦尝试使用字符串调用表达式函数(如帮助示例中所示),我就会收到一个错误,TypeError: no constructor matches given arguments
.
import clr
dllpath = r'C:\...\GitHub\MathParser.org-mXparser\CURRENT\c-sharp\bin\Release\MathParser.org-mXparser.dll'
import org.mariuszgromada.math.mxparser as mx
expr_01 = mx.Expression('2 + 1')
最初我认为这意味着我需要指定我传递的字符串的类型,但我认为不是这样。有任何想法吗?我使用 .NET Framework 4.5.2 编译了 mXparser dll(我没有选择使它对 COM 可见的选项)。
解决方案
您可以运行
mx.Expression.Overloads
以查看它需要什么参数类型。类型可以通过from System import String
等导入
明确地,构造c#类型
from System import String
str3 = String('2 + 1')
expr_01 = mx.Expression(str3)
推荐阅读
- javascript - 谷歌自动完成地址下拉菜单不在其各自的输入字段中。如何解决这个问题?
- php - 我正在尝试使用 getID3 库在 php 中修剪音频文件。我得到了一个随机字符串。如何将其转换为正确的文件。可以播放
- javafx - 使用 ImageIO.write 写入 jpg 或 jpeg 图像不会创建图像文件
- ios - 当应用程序在后台时,clevertap Deeplink 通知正在重定向到 Safari 而不是移动应用程序
- git - 如何将不同的已完成功能合并到 master 中?
- html - 如何在桌面上的 WhatsApp 网页上和手机上的 WhatsApp 应用程序上共享 WhatsApp
- swiftui - CoreData 和 FetchRequest,ForEach 问题和“无法调用初始化程序”
- python-3.x - 如何搜索多个电子邮件地址
- bash - 如何从 Atom 编辑器运行 MATLAB 脚本
- angular - 是否可以为 mat-tree 设置动画?(角材料)