软件:
Python 3.7.0
Matlab 2019b
环境:
Win10
首先要明白,python调用matlab,仅支持python2.6,3.6,3.7这几个版本 其他版本是不行。
问题1:python为3.8版本以上的怎么更改3.7或者3.6版本?
查看当前版本,发现为3.8.8。
例如:
点击“确定”,
“win+R” 输入“cmd” “回车” 打开命令提示符
接下来,进行对python与matlab的接口进行设置。
首先找到matlab中“setup.py”的路径,记录一下G:matlab2019bexternenginespython
上面这个是我的路径,你只需要找到自己matlab下的python文件中的setup.py,就证明找对了。
打开命令提示符 进入到G:matlab2019bexternenginespython此路径下
在此路径下,输入, python setup.py install --prefix="c:workmatlab19aPy36"
测试是否可以调用?
还需将parcharm中的环境进行修改
Python调用程序如下
import matlab.engine eng = matlab.engine.start_matlab()
ret = eng.triatea(1.0,5.0)
print(ret)
matlab文件如下(被调用函数为triatea)
function a = triatea(b,h)
a = 0.5*(b* h);
在此处运行程序
发现报错了
将python程序再次修改
import matlab.engine eng = matlab.engine.start_matlab()
eng.cd('G:matlab2019bexternenginespython',nargout=0) #python 要与 被调用的.m文件在同一文件夹下。 否则出现调用失败。 ret = eng.triatea(1.0,5.0)
print(ret)
再次运行,发现成功了
到此 修改python版本,matlab接口设置全部完毕
可以自由地进行调用matlab 了,但是,此方法有一个缺点就是慢。对于大型计算来说,还是进行代码翻译,或者另寻他法吧。
本人为python新手一个,如有赘述,不喜勿喷。
参考博客https://www.cnblogs.com/beginner-boy/p/7248399.html链接制作,如有侵权,请与本人联系。



