python中添加matlab

解决No module named matlab.engine的问题

1. 问题描述
使用matlab做信号处理是很舒服的一件事情,但是如果我们想用python来调用MATLAB的处理结果岂不是美滋滋?python还真有调用MATLAB的库,那就是matlab.engine模块,但是使用起来会出现“No module named 'matlab.engine”的问题:

这是因为matlab的支持问题,常用的matlab版本对应的python版本号为:

Matlab 2016a 最高支持 python 3.4
Matlab 2016b,2017a 最高支持 python 3.5
Matlab 2017b 最高支持 python 3.6
其余的MATLAB支持的python版本可以在软件安装路径下(以我的路径为例)

D:\matlab\extern\engines\python

中的“setup.py”文件中可以查看:
在这里插入图片描述
上图是MATLAB 2017b的setup文件,其支持python2.7, 3.4, 3.5, 3.6版本

 

2. 解决方法
首先要确认你电脑中的MATLAB版本是否支持你所使用的python版本,如果不支持的话,可以安装合适的matlab版本,或者更改python的版本。
matlab各版本破解版网上都可以找到,这里以anaconda为例演示怎么更换python版本:
第一步新建虚拟环境,以python3.6为例

conda create -n py36 python=3.6

进入虚拟环境:

activate py36


下载nb_conda用来给jupyter notebook用

conda install nb_conda


这样python3.6的基础环境就搭建好了,剩下的安装一些自己需要的包即可

如果MATLAB版本支持所使用的python版本,需要进行一下操作将MATLAB与python就行“绑定”
第一步:“win+R”输入“cmd”打开命令行:

第二步:将路径更改为MATLAB安装路径,即“setup.py”文件所在的路径:

 

第三步:打开我们的python环境,这里我们以刚建立的py36为例:

第四步:依次输入以下命令:

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 --user


然后大功告成,我们可以测试一下,发现“matlab.engine”加载成功:

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值