Указатели, возвращенные из MATLAB в Python

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

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

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

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

double

float

single

float

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

complex

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)

logical

bool

string

string

<missing> значение в string

None

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

str

char вернулся на Python 2.7

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

Структура

dict

MATLAB указателя объекта (например, containers.Map тип)

matlab.object

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

Объект значения MATLAB (такой как categorical тип)

Непрозрачный объект. Можно передать объект значения в функцию MATLAB, но вы не можете создать или изменить его.

Тип массива MATLAB для Отображения типа в Python

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

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

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

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

string вектор

list от string

char массив (1-by- N, N-by-1) вернулся на Python 3.x

str

char массив (1-by- N, N-by-1) вернулся на Python 2.7

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

Массив ячеек строка или столбец

list

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

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

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

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

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

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

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

Похожие темы