码迷,mamicode.com
首页 > 其他好文 > 详细

Matlab中使用jython扩展功能

时间:2014-10-07 13:20:53      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:blog   使用   ar   java   文件   sp   2014   c   on   

Matlab中面向对象能力并不强,通过使用jython引擎可以对其功能扩展.


1 编辑classpath.txt加入jython.jar

在matlab中输入

which classpath.txt

结果:

/usr/local/MATLAB/R2013a/toolbox/local/classpath.txt

编辑该文件,添加

/home/your_user/jython2.5.3/jython.jar

2 重新启动matlab

3 编写代码测试

import javax.script.Invocable;  
import javax.script.ScriptEngine;  
import javax.script.ScriptEngineManager;  

mg = ScriptEngineFactory();
jy = mg.getEngineByName('jython')
可以看到结果:

jy =
 
org.python.jsr223.PyScriptEngine@432034a

jy.eval('print("Hello")')
jy.eval('def add(a, b):\n   return a + b')
jy.eval('add(5, 5)')
jy.put('name', 'Hello')
jy.get('name')
v = rand(5, 5)
jy.put('vals', v)
jy.get('vals')

如果希望使用其他脚本引擎, 如javascript, 可以参考上篇博文.

4 调用jython解释器实现调用python代码文件

import org.python.util.PythonInterpreter

intp = PythonInterpreter();
intp.exec('a = 5;')
intp.get('a');


但实际上exec方式与3中方法从功能上是一致的;

考虑到javacript engine的接口一致性,建议用3中方法.


Matlab中使用jython扩展功能

标签:blog   使用   ar   java   文件   sp   2014   c   on   

原文地址:http://blog.csdn.net/miscclp/article/details/39852205

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!