python调用并链接MATLAB脚本详解

yipeiwu_com5年前Python基础

发现一个很简单的配置方法,一直想写的没写上,今天抽空就把它给补充完整好了。

本文的配置方法Windows,Mac和Linux系统均适合。

一.安装MATLAB Engine API for python

install MATLAB Engine API for Python

Windows系统

cd "matlabroot\extern\engines\python"
python setup.py install

Mac or Linux系统

cd "matlabroot/extern/engines/python"
python setup.py install

这里的"matlabroot"是你matlab所在的安装路径,注意,上面两个地址中的反斜杠是不同的。

二.用Python调用脚本或者函数

Call User Script and Function from Python

脚本

在当前目录下,MATLAB建立triarea.m脚本文件,内容如下

b = 5;
h = 3;
a = 0.5*(b.* h)

然后同目录下新建一个test.py,内容如下

import matlab.engine
eng = matlab.engine.start_matlab()
eng.triarea(nargout=0)

函数

MATLAB建立一个function文件,内容如下:

function a = triarea(b,h)
a = 0.5*(b.* h);

同样,test.py修改如下:

import matlab.engine
eng = matlab.engine.start_matlab()
ret = eng.triarea(1.0,5.0)
print(ret) # 2.5

是不是觉得特别方便?惊不惊喜,意不意外,枉费我之前用mlab时在windows下配置了那么多,后来在Linux下没成功的时候,无意间就发现了这个方法。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python走楼梯问题解决方法示例

本文实例讲述了Python走楼梯问题解决方法。分享给大家供大家参考,具体如下: # -*- coding:utf-8 -*- #!python3 ''' 下楼问题。从楼上走到楼下共有...

python zip()函数使用方法解析

这篇文章主要介绍了python zip()函数使用方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 参数iterable为可迭代...

浅谈Matplotlib简介和pyplot的简单使用——文本标注和箭头

浅谈Matplotlib简介和pyplot的简单使用——文本标注和箭头

 在使用pyplot画图的时候,有时会需要在图上标注一些文字,如果曲线靠的比较近,最好还能用箭头指出标注文字和曲线的对应关系。这里就介绍文字标注和箭头的使用。 添加标注使用py...

详细讲解用Python发送SMTP邮件的教程

详细讲解用Python发送SMTP邮件的教程

SMTP是发送邮件的协议,Python内置对SMTP的支持,可以发送纯文本邮件、HTML邮件以及带附件的邮件。 Python对SMTP支持有smtplib和email两个模块,email...

Python实现把json格式转换成文本或sql文件

python如何将json格式的数据快速的转化成指定格式的数据呢?或者转换成sql文件? 下面的例子是将json格式的数据准换成以#_#分割的文本数据,也可用于生成sql文件。 [r...