主要内容

利用MATLAB处理对象Python

此示例显示了如何从MATLAB创建对象®处理课程并在Python中调用其方法®

在您当前的文件夹中,在名为的文件中创建MATLAB句柄类三角形

ClassDef三角形<句柄特性(setAccess = private)base = 0;高度= 0;结尾方法功能tr =三角形(b,h)tr.base = b;tr.height = h;结尾功能a =区域(tr)a = 0.5。* tr.base。* tr.height;结尾功能setBase(tr,b)tr.base = b;结尾功能Setheight(tr,h)tr.height = h;结尾结尾结尾

开始Python。创建一个三角形处理对象并调用其区域引擎的方法。将手柄对象作为第一个位置参数传递。

导入matlab.engine eng = matlab.engine.start_matlab()tr = eng.triangle(5.0,3.0)a = eng.area(tr)print(a)
7.5

复制tr到MATLAB工作区。您可以使用评估从工作区访问句柄对象的属性。

eng.workspace [“ wtr”] = tr b = eng.eval(“ wtr.base”)print(b)
5.0

改变高度敏捷方法。如果您的MATLAB句柄类定义了属性的GET和设置方法,则可以访问属性,而无需使用MATLAB工作区。

Eng.seyight(Tr,8.0,Nargout = 0)a = eng.area(tr)print(a)
20.0

笔记

三角形类对象tr,是对象的手柄,而不是对象的副本。如果您创建tr在函数中,它仅在函数范围内有效。

也可以看看

|

相关话题