• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

如何在Python中调用Matlab

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

检查您的系统是否具有受支持的 Python 版本和 MATLAB R2014b 或更新版本。要检查您的系统上是否已安装 Python,请在操作系统提示符下运行 Python。

1)打开Prompt,输入' cd matlabroot\extern\engines\python' 切换并创建文件夹

输入'python setup.py install' 进行安装。如果提示python版本不对进去下面流程。

2)键入'python –version' 查看python版本。如果版本不符合上一句指令提示,使用conda指令切换python版本。

3)执行命令:conda create --name python34 python=3.4 安装3.4版本

4)执行命令    conda info --envs,从图中我们看到,这里多了一个名字为python34Python环境.

5)执行命令:python --version,查看当前版本

6)执行命令:activate python34,然后执行命令:python --version,查看是否切换成功.

7)重新执行1)完成安装用于 Python  MATLAB 引擎 API

 

现在我们想用Spyder来编程,所以需要通过Prompt切换到Spyder(python 3.4)

1'activate python34' 进入刚才创建的环境。

2在环境中安装anaconda的库'conda install anaconda'

3)安装完毕之后键入: 'spyder' 即可进入Spyder(python 3.4)

 

现在我们可以在Spyder中启动Matlab

[1]: import matlab.engine

[2]: eng = matlab.engine.start_matlab()

在当前文件夹下创建名为test.m文件,Python中:

[3]: eng.test(nargout=0) #指定 nargout=0尽管脚本会打印输出,但它不会返回任何输出参数

 

Matlab中自定义的函数也是可以用Python调用的,打开test.m(只能编写,不能执行),matlab自带函数同理:

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

回到Spyder

[4]:ret = eng.triarea(1.0,5.0)
[5]:print(ret) # triarea 函数仅返回一个输出参数,因此无需指定 nargout

 

要停止执行 MATLAB 函数,请按 Ctrl+C。控制权将返回给 Python
程序最后记得退出matlab环境:
[6]:eng.quit()


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Delphi XE 10 DataSnap TCP 与 HTTP 比较发布时间:2022-07-18
下一篇:
delphiXE5皮肤的使用发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap