Ошибки Поиска и устранения проблем при использовании MATLAB® внешний интерфейс являются проблемой. Ошибка в приложении Python® или в вашем коде MATLAB? Распространенные ошибки включают ошибки, о которых сообщает Python и ошибки от попытки преобразовать данные Python в MATLAB и с другой стороны.
Ошибка Python:
Класс Python:
сообщение
MATLAB отображает сообщение об ошибке в следующем формате:
Python Error: Python class: message
MATLAB отображает message
, только если существует сообщение об ошибке Python.
Эта ошибка прибывает из Python, и для получения информации необходимо обратиться к версии документации Python в www.python.org/doc
или документации по продукту от сторонних поставщиков. Например:
p = py.os.path.split(pwd);
py.operator.setitem(p,int32(1),py.str('temp'));
Python Error: TypeError: 'tuple' object does not support item assignment
Ищите термин “кортеж” на сайте документации Python для вашей версии Python. Кортеж является встроенной функцией, описанной здесь: https://docs.python.org/2/library/functions.html#tuple
.
MATLAB сообщает о некоторых ошибках Python как об ошибке MATLAB, загружающей модуль. Для получения дополнительной информации смотрите Неопределенную переменную "py" или функцию "py.command".
Если вы пишете свои собственные модули Python или изменяете исходный код от существующего модуля, тестируете ваши команды MATLAB путем записи эквивалентной команды Python в Интерпретаторе Python. Этот рабочий процесс выходит за рамки поддержки документации MATLAB и поддержки продукта.
Когда данные совместимы, MATLAB автоматически преобразовывает данные Python в данные MATLAB. Для списка типов данных необходимо явным образом преобразовать, видеть Явные Преобразования типов.
Например, несмотря на то, что MATLAB поддерживает многомерные массивы, можно только передать векторы данных к Python.
x = py.len([2 3 4; 4 5 6])
Error using py.len Conversion of MATLAB 'double' to Python is only supported for 1-N vectors.