Python调用Matlab方法以及测试程序

由于笔者需要在python程序中调用matlab,故记录下调用方法以及测试。

系统环境:win10 + python2.7 + Matlab R2016a

API

MATLAB在安装的过程中已经准备好了相关文档。
第一步要做的就是确定自己电脑matlab的安装目录,找到以下路径
cd <Installpath>...MATLAB\R2016a\extern\engines\python

笔者安装路径为: C:\Program Files\MATLAB\R2016a\extern\engines\python
image_1d74pqfsnld2cf131t1vfeuge1g.png-18.7kB

之后以管理员方式启动command window(重要!!),在里面定位到以上路径,输入python setup.py install,即可开始运行安装。
python setup.py install

【注意】笔者电脑刚开始只用了python3.6,运行完提示只支持python2.7,3.3和3.4版本,因此又重新创建了一个python27的环境。

image_1d74q25ugfgb1mlj1uvq9041loa1t.png-18.4kB

后来另一个问题又出现了,笔者在使用powershell来运行的时候,python27环境一直无法激活
image_1d74pm8qn5k14sphvfi0m49um.png-6kB

后来发现需要先以管理员身份启动powershell,在其中输入:
Set-ExecutionPolicy RemoteSigned

之后提示如下:

PS C:\WINDOWS\system32> Set-ExecutionPolicy RemoteSigned
执行策略更改
执行策略可帮助你防止执行不信任的脚本。更改执行策略可能会产生安全风险,如http://go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies帮助主题所述。是否要更改执行策略?
[Y] 是(Y)  [A] 全是(A)  [N] 否(N)  [L] 全否(L)  [S] 暂停(S)  [?] 帮助(默认值为“N”):Y

输入Y,然后回车
至此结束,重新开一个PowerShell就可以在其中正常使用activate python27来激活虚拟环境了,发现激活成功
之后再运行 python setup.py install

image_1d74plrl213lv5l01805r6d1ugs9.png-33.1kB

在python下import matlab发现导入成功。

image_1d74pn44h1m1nks5v511s4l11ls13.png-12.2kB

Test

在matlab中新建一个test.m文件,然后命名一个test函数,来计算y=3x+4

function y = test(x)
    y = 3*x+4;

image_1d7678q3b17lg1bh2145i2346m72a.png-7.2kB

在同一目录下,新建一个matlabtest.py文件,调用test.m文件中的test函数

import matlab
import matlab.engine

engine = matlab.engine.start_matlab() # Start MATLAB process
y = engine.test(3)  #求解x=3时,y=a*x+b的值
print(y)

测试效果如下:

image_1d767hmvkjf12jn7kefij10gi2n.png-36.1kB

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值