为了账号安全,请及时绑定邮箱和手机立即绑定

从MATLAB调用Python函数

从MATLAB调用Python函数

慕运维8079593 2019-10-15 14:39:54
我需要从MATLAB调用Python函数。我怎样才能做到这一点?
查看完整描述

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

>>


查看完整回答
反对 回复 2019-10-15
?
森林海

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。


查看完整回答
反对 回复 2019-10-15
  • 3 回答
  • 0 关注
  • 1097 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信