Python如何调⽤MATLAB附有实例和详细讲解
Python和MATLAB版本
Python调⽤MATLAB的脚本或者函数,只⽀持少数的Python版本, 2.7、 3.5、3.6.
如何知道⾃⼰的Python版本?
Win+R 输⼊ cmd ,输⼊
python
即可。
前⾯是版本,为Python3.6.6 ,后⾯是位数,64位,要保证MATLAB与Python都是同等位数,即Python是64位的,MATLAB也必须是64位的,32位的同理。
如果Python版本过⾼怎么办?
⽅法1: ⽹上到版本降低的⽅法,就可以了,很多⽂章都有写。(注意python环境和Anaconda的步骤不⼀样)
⽅法2:个⼈觉得是⽐较彻底、好⽤的⽅法
卸载!!重装
打开软件管家
卸载
搜“python”
卸载出现的python版本
然后下载新的python3.6即可
MATLAB的选择版本
我两个电脑,⼀个是2018版本的,⼀个是2020版本的,⽬前来说都可以连接,⽹上⼀些资料显⽰2017也可以。
Python调⽤MATLAB的过程
1、到MATLAB的安装⽬录,实在不到,就打开MATLAB软件,输⼊:
matlabroot
返回下图效果:
表明,matlab安装在D盘的MATLAB2020⽂件夹内。
2、依此到该⽂件夹下的extern>engines>python,如下
可以看到,⽂件夹内有⼀个setup.py的⽂件。
3、然后,我们在2中红框的位置输⼊cmd,然后按Enter键,进⼊DOS窗⼝。
4、出来下图窗⼝:
5、输⼊:
python setup.py install
效果如下
如果安装过了,再重复步骤5,效果应该是如下:
这时,正常来说就安装好了
如何测试python 是否可以调⽤MATLAB程序
在同⼀个(必须是同⼀个)⽂件夹下,新建两个程序⽂件,⼀个是.py的,⼀个是.m的。.m⽂件代码:
function x=myls(A,B)
a = double(A)
b = double(B)
x = a\b;
end
如图:
.py⽂件代码:
import matlab
ine
eng = ine.start_matlab()
t = ls(4,2)
print(t)
如图:
上式是调⽤matlab的函数如myls的。
如何调⽤MATLAB⽂件呢,让某个.m⽂件⾃⼰运⾏?
python怎么读取py文件如图,Python调⽤matlab中的mainTest.m⽂件,直接运⾏mainTest.m⽂件。将
t = ls(4,2)  #调⽤函数的(参数1,参数2)
t = eng.mainTest(nargout=0) #直接运⾏的话(参数=0)
运⾏效果:
问题1:每次运⾏都会很慢
因为要读取matlab的环境,所以每次运⾏都要等好久,如果⼤佬们有什么可以优化速度的⽅法,也请告知告知我
问题2:Pycharm运⾏出现:No module named matlab
我⽤pycharm打开⼀个测试程序显⽰“no module named matlab”,可以打开setting,去解释器中安装matlab,但是我的没有,只
有“r-matlab ”,我安装了也不⾏。
解决办法
我直接⽤Python打开程序,可以运⾏。就是下图这玩意:
如此,Python调⽤MATLAB的⼊坑出坑⽅法就算有了个总结了。
参考连接
写在最后:
你要相信⼤多数⼈与⼈之间的差距并不⼤,但是0.99的N次⽅和1.1的N次⽅差距是随着N多增多⽽越来越⼤的;坚定的⽬标和持久的努⼒⼀定会成功!
你偷过的每⼀个懒,都会成为你⽇后最深的遗憾。
我是通信不⼆,⼀个积极努⼒,乐观向上的程序猿

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。