Indexing custom Python objects

2 Ansichten (letzte 30 Tage)
Gabor Bekes
Gabor Bekes am 2 Sep. 2019
Kommentiert: Matthias Mayer am 17 Sep. 2020
Hello,
I want to be able to use indexable Python objects via MATLAB's Python interface. The context is, I need to process .odb files, created by the Abaqus FEM tool, which has a built in Python interpreter with the appropriate module to process such files, so the goal is to be able to handle this from MATLAB.
The problem is that MATLAB only sees a limited subset of attributes on these objects, for example it doesn't see the __getitem__ method that's needed to be able to index them. Ideally, I would do something along the lines of the following:
a = py.numpy.array([1, 2, 3]);
get = py.getattr(a, '__getitem__');
get(0)
Currently, the workaround is to use py.eval with a workspace dictionary, but I expect that being able to use indexing will be faster. I will happily provide further details if needed.
Thanks!
  1 Kommentar
Matthias Mayer
Matthias Mayer am 17 Sep. 2020
Try casting the index to int32, i.e. with get(int32(0))

Melden Sie sich an, um zu kommentieren.

Antworten (0)

Kategorien

Mehr zu Call Python from MATLAB finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by