4

我目前使用 Matlab 作为一种科学计算语言,但有兴趣转向更开放的替代方案。Python (+scipy +numpy +matplotlib) 似乎是最好的方法。我对这种切换的最大担忧是 Python 不会像 Matlab 那样与 Java 交互好/容易/无缝,而且我经常需要使用 Java API。我特别喜欢 Matlab 中的那个:

1) 我可以实例化 Java 对象并访问它们的成员变量和方法

2) Java 事件在 Matlab 中变成“回调”

3) Java 类型自动转换为 Matlab 类型(布尔到逻辑等)

据我所知,Python 中有 3 个选项(如下)。我担心的是,每一个都是由一个非常小的开发人员社区支持/开发的(据我了解,每种情况下都有 1-3 人)并且这种支持可能不会永远存在。以下哪项是 Matlab 所做的两件事?在可预见的未来,哪个最有可能继续这样做?如果我也可以使用 Python 中的 Java GUI,那将是一个额外的好处。我错过了任何选择吗?

1)Jython

2)Py4J

3) 类型

4

1 回答 1

0

我不认为有一个简单的方法可以做到这一点,因为 SciPy 和朋友目前不在 Jython 上运行。您可以将事物作为客户端服务器或作为具有重定向标准输入/输出/错误的子进程运行。

我还在我的一个 Python 项目中玩弄了 XML-RPC,我从可用的文档中得到了一个可能有用的信息。走这条路你不会得到世界上最好的性能,但它确实具有相当容易上手的优点。

于 2013-02-27T14:07:34.020 回答