python3调用matlab函数

1.版本对应问题

python3.6可以调用matlab2018b的引擎运行函数

实现方式:在matlab2018b的安装目录下,进入extern\engines\python\,在该文件夹位置下进入cmd。然后输入

python setup.py install

如果没有错误提示则继续,有错误,则查看自己的python和matlab版本,一定要对应。然后输入python,进入python环境后,

import matlab

没有错误提示则安装成功。

2.如何调用

说明:

》》1    matlab引擎的打开与关闭

import matlab # 导入matlab库

eng = matlab.engine.start_matlab()  # 初始化引擎
####
#do something#  完成一些工作
####
eng.quit() # 退出引擎

》》2  操作说明(重要的5点)

#1.
eng.eval("A = ones(3,3);",nargout=0) # eval里面的引号里面的内容,相当于在matlab的命令界面窗口输#入的内容,会执行

#2.
B = matlab.uint8([1,2,3,4,5,6]) # matlab.uint8()函数创建了个mlarray,注意参数是列表

#3.
C = np.ones(3,3).tolist() # 将numpy数组转换为二维列表,故C可以作为上式的参数

#4.
D = np.array(B) # 这样可以将mlarray转换成numpy下的arraay

#5.
eng.workspace["E"]=B  # 注意工作空间是一个字典,变量名加引号作为key,而word是mlarray对象

3.运行时提示打印机运行时间太长问题

 解决:在电脑控制面板里面,修改自己的默认打印机,设为本地的。我的是默认为PdfCreator

你可能感兴趣的:(python3)