3 回答
TA贡献1998条经验 获得超6个赞
我对系统有类似的要求,这是我的解决方案:
在MATLAB中,有一个名为perl.m的函数,该函数允许您从MATLAB中调用perl脚本。根据您使用的版本,它会位于类似
C:\Program Files\MATLAB\R2008a\toolbox\matlab\general\perl.m
创建一个名为python.m的副本,这是一个快速搜索并用python替换perl的副本,再次检查其设置的命令路径以指向您的python安装。您现在应该能够从MATLAB运行python脚本。
例
python中一个简单的平方函数,另存为“ sqd.py”,如果正确执行此操作,自然会在测试输入参数,有效数字等方面进行一些检查。
import sys
def squared(x):
y = x * x
return y
if __name__ == '__main__':
x = float(sys.argv[1])
sys.stdout.write(str(squared(x)))
然后在MATLAB中
>> r=python('sqd.py','3.5')
r =
12.25
>> r=python('sqd.py','5')
r =
25.0
>>
TA贡献2011条经验 获得超2个赞
Jython是最简单的解决方案。
只需从主页安装Jython 。
然后:
javaaddpath('/path-to-your-jython-installation/jython.jar')
import org.python.util.PythonInterpreter;
python = PythonInterpreter; %# takes a long time to load!
python.exec('import some_module');
python.exec('result = some_module.run_something()');
result = python.get('result');
注意:我从未真正使用过Jython,似乎人们可能从CPython知道的标准库并未在Jython中完全实现!
我测试的一些小示例效果很好,但您可能会发现必须将Python代码目录添加到sys.path。
添加回答
举报