Обработка данных, возвращенных от MATLAB до Python

Скалярный тип MATLAB к Отображению типа в Python

Когда функции MATLAB® возвращают выходные аргументы, API MATLAB Engine для Python® преобразовывает данные в эквивалентные типы данных Python.

Тип выходного аргумента MATLAB —
Скалярные значения только

Получившийся тип данных Python

'double'

float

единственный

float

Комплекс (любой числовой тип)

комплекс

int8

int

uint8

int

int16

int

uint16

int

int32

int

uint32

int (Python 3. x
long (Python 2.7)

int64

int (Python 3. x
long (Python 2.7)

uint64

int (Python 3. x
long (Python 2.7)

NaN

float(nan)

Inf

float(inf)

логический

bool

char возвращен в Python 3. x

str

char возвращен в Python 2.7

str (когда MATLAB значение char меньше чем или равно 127),
unicode (когда MATLAB значение char больше, чем 127),

Структура

dict

Объект указателя MATLAB (такой как тип containers.Map)

mATLAB. объект

MATLAB возвращает ссылку на matlab.object, не сам объект. Вы не можете передать matlab.object между сеансами работы с MATLAB.

Тип массива MATLAB к Отображению типа в Python

Тип выходного аргумента MATLAB —
Массив

Получившийся тип данных Python

Числовой массив

Объект числового массива matlab (см. Массивы MATLAB как Переменные Python),

Массив char (1 N, N-by-1) возвратился к Python 3. x

str

Массив char (1 N, N-by-1) возвратился к Python 2.7

str (когда MATLAB массив char имеет значения, меньше чем или равные 127),
unicode (когда MATLAB массив char имеет любое значение, больше, чем 127),

Ячейка строки или массив ячейки столбца

list

Неподдерживаемые типы MATLAB

API MATLAB Engine для Python не поддерживает эти типы данных MATLAB.

  • Категориальный массив

  • Массив char (M-by-N)

  • Массив ячеек (M-by-N)

  • Указатель на функцию

  • Разреженный массив

  • Массив структур

  • Таблица

  • Объекты значения MATLAB (для обсуждения указателя и классов значения смотрите Сравнение Классов Указателя и Значения),

  • Объекты неMATLAB (такие как объекты Java®)

Похожие темы

Была ли эта тема полезной?