Передайте данные перечисления в MATLAB из python - PullRequest
1 голос
/ 17 апреля 2020

Я пытаюсь вызвать функции MATLAB из моего python скрипта, и один из скриптов matlab принимает параметр enum.

++++++++ сторона MATLAB ++++++++++++++

Определение Enum

classdef eCharCents
    enumeration
        vQs1,vQv1,vQs2,vQv2     
    end 
end

Вот как Я запускаю функцию MATLAB

testFunction(eCharCents.vQv2)

++++++++ Python Эквивалент ++++++++++++++

Вот как я

import matlab.engine as MAT_ENG
from enum import Enum

class eCharCents(Enum):
     vQs1,vQv1,vQs2,vQv2 = range(0,4)  # I had to add range here as python needs data and value

print(eCharCents.vQs1)    # this outputs eCharCents.vQs1 

eng = MAT_ENG.start_matlab()
eng.testFunction(eCharCents.vQv2)   #  throws an error saying unsupported Data type

Пожалуйста, дайте мне знать, если есть какие-либо обходные решения / комментарии / предложения

В документации MATLAB ничего не говорится о ENUM

https://www.mathworks.com/help/matlab/matlab_external/pass-data-to-matlab-from-python.html#bui0jkn

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...