python调用并链接MATLAB脚本详解


Posted in Python onJuly 05, 2019

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

本文的配置方法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基础教程之面向对象的一些概念
Aug 29 Python
python处理二进制数据的方法
Jun 03 Python
两个使用Python脚本操作文件的小示例分享
Aug 27 Python
浅析Python中的getattr(),setattr(),delattr(),hasattr()
Jun 14 Python
python中字符串类型json操作的注意事项
May 02 Python
python高阶爬虫实战分析
Jul 29 Python
Python requests模块实例用法
Feb 11 Python
python上传时包含boundary时的解决方法
Apr 08 Python
完美解决jupyter由于无法import新包的问题
May 26 Python
Python常见反爬虫机制解决方案
Jun 01 Python
结束运行python的方法
Jun 16 Python
Python爬虫之爬取某文库文档数据
Apr 21 Python
python实现最大子序和(分治+动态规划)
Jul 05 #Python
Python实现最大子序和的方法示例
Jul 05 #Python
python gensim使用word2vec词向量处理中文语料的方法
Jul 05 #Python
python开发之anaconda以及win7下安装gensim的方法
Jul 05 #Python
python使用opencv对图像mask处理的方法
Jul 05 #Python
Python代码太长换行的实现
Jul 05 #Python
Python PyCharm如何进行断点调试
Jul 05 #Python
You might like
Http 1.1 Etag 与 Last-Modified提高php效率
2008/01/10 PHP
Pain 全世界最小最简单的PHP模板引擎 (普通版)
2011/10/23 PHP
CI框架中通过hook的方式实现简单的权限控制
2015/01/07 PHP
Yii2中设置与获取别名的函数(setAlias和getAlias)用法分析
2016/07/25 PHP
用js实现层随着内容大小动态渐变改变 推荐
2009/12/19 Javascript
Js获取事件对象代码
2010/08/05 Javascript
jQuery(1.6.3) 中css方法对浮动的实现缺陷分析
2011/09/09 Javascript
基于IE下ul li 互相嵌套时的bug,排查,解决过程以及心得介绍
2013/05/07 Javascript
浅析Js(Jquery)中,字符串与JSON格式互相转换的示例(直接运行实例)
2013/07/09 Javascript
javascript框架设计之种子模块
2015/06/23 Javascript
PHP捕捉异常中断的方法
2016/10/24 Javascript
简单理解vue中实例属性vm.$els
2016/12/01 Javascript
jQuery实现拖拽可编辑模块功能代码
2017/01/12 Javascript
Boostrap栅格系统与自己额外定义的媒体查询的冲突问题
2017/02/19 Javascript
鼠标经过出现气泡框的简单实例
2017/03/17 Javascript
关于Vue在ie10下空白页的debug小结
2018/05/02 Javascript
vue拖拽排序插件vuedraggable使用方法详解
2020/08/21 Javascript
vue component 中引入less文件报错 Module build failed
2019/04/17 Javascript
JavaScript如何使用插值实现图像渐变
2020/06/28 Javascript
vue中后端做Excel导出功能返回数据流前端的处理操作
2020/09/08 Javascript
解决vue-loader加载不上的问题
2020/10/21 Javascript
python 容器总结整理
2017/04/04 Python
Python 找到列表中满足某些条件的元素方法
2018/06/26 Python
Python+selenium 获取浏览器窗口坐标、句柄的方法
2018/10/14 Python
解决Jupyter Notebook开始菜单栏Anaconda下消失的问题
2020/04/13 Python
在主流系统之上安装Pygame的方法
2020/05/20 Python
使用Python爬取Json数据的示例代码
2020/12/07 Python
20行代码教你用python给证件照换底色的方法示例
2021/02/05 Python
英国玛莎百货澳大利亚:Marks & Spencer Australia
2019/08/30 全球购物
物流管理毕业生自荐信
2013/10/24 职场文书
安全生产管理责任书
2014/04/16 职场文书
团结就是力量演讲稿
2014/05/21 职场文书
2015年新学期寄语
2015/02/26 职场文书
红色故事汇观后感
2015/06/18 职场文书
钓鱼岛事件感想
2015/08/11 职场文书
解决python绘图使用subplots出现标题重叠的问题
2021/04/30 Python