最近实验室老师让干点小活,主要是写一个程序来调用一下matlab脚本以及一个Fortran程序,然后就去网上搜了一些资料,搞了一下,趁着自己还记得,就记录一下,两个法子。
首先介绍一下程序运行的环境,脱离环境谈运行就是耍流氓。
[1] MATLAB R2018a
[2] python3.5.6 (Anaconda)
在matlab的安装路径下找到steup.py文件,其位置如下所示。
然后在python里安装matlab,执行如下语句。
python setup.py install
执行结果如下
E:\matlab\extern\engines\python>python setup.py install
running install
running build
running build_py
running install_lib
copying build\lib\matlab\engine\_arch.txt -> E:\Anaconda3\envs\python35\Lib\site-packages\matlab\engine
running install_egg_info
Removing E:\Anaconda3\envs\python35\Lib\site-packages\matlabengineforpython-R2018a-py3.5.egg-info
Writing E:\Anaconda3\envs\python35\Lib\site-packages\matlabengineforpython-R2018a-py3.5.egg-info
如此便可以在python里调用matlab脚本了。
python脚本如下
import matlab
import matlab.engine
engine = matlab.engine.start_matlab() # 启动matlab engine
engine.hellomatlab(nargout = 0)
matlab脚本。
function hellomatlab()
clear
sum = 0;
for i = 1:100
sum = sum +i;
disp(['sum=',num2str(sum)]);
end
执行结果如下:
略慢…
此外还有一种利用mlab的方法,但是由于我用的python3,mlab应该是只支持到python2,我就没有进行尝试。
主要思路也记录一下
[1] 首先是下载malb
[2] 找到其setup.py,并在python里安装,安装语句依旧是
python setup.py install
[3]在python里面使用。
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删