Accessing matlab object properties from Python

36 views (last 30 days)
Andres Codas
Andres Codas on 29 Nov 2016
Answered: Bo Li on 30 Nov 2016
I'm compiling a matlab handle object and instantiating it from Python using the Matlab Compiler Runtime.
I manage to call instance methods as it is done in this example https://www.mathworks.com/help/matlab/matlab_external/use-matlab-handle-objects-in-python.html
However, how can I get properties?, i.e., from the example in the link above how do I write in Python "b = tr.Base"

Accepted Answer

Bo Li
Bo Li on 30 Nov 2016
I can think of following three approaches:
  1. eng.getfield(tr, 'Base'). This getfield function is designed for structure, and it works for class but may not work in the future.
  2. eng.subsref(tr, {'type':'.','subs':'Base'}). This usage is a little tedious but should work in long term.
  3. Add a get method to the class for each property to be accessed by Python.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by