python和matlab连接
1,实现matlab 和 python混编必须版本对应
matlab 查看版本
命令行窗口输入
1 | pyversion |
我的matlab是R2020b的版本,可以对应 3.6,3.8等版本,具体版本对应查看从 Python 调用 MATLAB - MATLAB & Simulink - MathWorks 中国
(1)解决版本不对应问题
一开始我的版本是3.10版本,为了连接上matlab,把3.10删了,下载了3.8,但这个时候使用pyversion查看依旧是3.10版本
这时候 ,在matlab命令行中使用
在 Windows 平台上设置 Python 版本
先进入matlab命令行
在 Windows® 平台上,使用以下任一方式:
1 | pyenv( 'Version' , 'version' ) |
或
1 | pyenv( 'Version' , 'executable' ) |
其中 executable 是 Python 可执行文件的完整路径。
可执行文件路径例如:C:\Users\86191\AppData\Local\Programs\Python\Python38\pythonw.exe
然后再使用:
1 | pyversion |
查看版本已经换过来啦
(2)配置matlab文件
进入C:\Program Files\Polyspace\R2020b\extern\engines\python
shift+右键 进入cmd
输入
1 2 3 4 5 6 7 | python setup.py build --build-base= "builddir" install python setup.py install --prefix= "installdir" python setup.py build --build-base= "builddir" install --prefix= "installdir" python setup.py install --userd<br><br> |
(3)之后就可以在python中调用matlab
我用的是pycharm ,所以首先再pycharm中更换python版本,换成3.8
python代码
1 2 3 4 5 | import matlab import matlab.engine eng = matlab.engine.start_matlab() t = eng.myls([ 4 , 2 ]) print (t) |
matlab代码
1 2 3 | function x = myls(values) x = values / 2 end |
python 代码与matlab代码放在同一文件夹下运行
如果出现 import matlab.engine 出错问题
1 | <em id = "__mceDel" ><em id = "__mceDel" >把C:\Program Files\Polyspace\R2020b\extern\engines\python\build\lib下文件赋值粘贴到<br><br>C:\Users\ 86191 \AppData\Local\Programs\Python\Python38\Lib文件夹下<br><br><br>< / em>< / em> |
本文作者:yayayua
本文链接:https://www.cnblogs.com/yaya-dsx/p/16322683.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步