Python调用Matlab教程
軟件:
Python 3.7.0
Matlab 2019b
環(huán)境:
Win10
首先要明白,python調(diào)用matlab,僅支持python2.6,3.6,3.7這幾個版本? 其他版本是不行。
問題1:python為3.8版本以上的怎么更改3.7或者3.6版本?
查看當(dāng)前版本,發(fā)現(xiàn)為3.8.8。
- 下載python3.7 并安裝。這里不再贅述(注意安裝的路徑這很重要)
例如:
- 進(jìn)入Scripts 文件夾,刪除pip文件。
- 進(jìn)入環(huán)境變量配置頁面
-
點擊“確定”,
“win+R” 輸入“cmd” ??“回車” ??打開命令提示符
接下來,進(jìn)行對python與matlab的接口進(jìn)行設(shè)置。
首先找到matlab中“setup.py”的路徑,記錄一下G:\matlab2019b\extern\engines\python
上面這個是我的路徑,你只需要找到自己matlab下的python文件中的setup.py,就證明找對了。
打開命令提示符 進(jìn)入到G:\matlab2019b\extern\engines\python此路徑下
-
在此路徑下,輸入, python setup.py install --prefix="c:\work\matlab19aPy36"
測試是否可以調(diào)用?
還需將parcharm中的環(huán)境進(jìn)行修改
-
Python調(diào)用程序如下
import matlab.engineeng = matlab.engine.start_matlab()ret = eng.triatea(1.0,5.0)
print(ret)
matlab文件如下(被調(diào)用函數(shù)為triatea)
function a = triatea(b,h)
a = 0.5*(b* h);
在此處運行程序
?發(fā)現(xiàn)報錯了
-
將python程序再次修改
import matlab.engineeng = matlab.engine.start_matlab() eng.cd('G:\matlab2019b\extern\engines\python',nargout=0)? #python 要與 被調(diào)用的.m文件在同一文件夾下。? 否則出現(xiàn)調(diào)用失敗。ret = eng.triatea(1.0,5.0)
print(ret)再次運行,發(fā)現(xiàn)成功了
?
-
到此 修改python版本,matlab接口設(shè)置全部完畢
可以自由地進(jìn)行調(diào)用matlab 了,但是,此方法有一個缺點就是慢。對于大型計算來說,還是進(jìn)行代碼翻譯,或者另尋他法吧。
本人為python新手一個,如有贅述,不喜勿噴。
參考博客https://www.cnblogs.com/beginner-boy/p/7248399.html鏈接制作,如有侵權(quán),請與本人聯(lián)系。
總結(jié)
以上是生活随笔為你收集整理的Python调用Matlab教程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 1000瓶毒水的问题
- 下一篇: linux文件句柄,【LINUX】使用l