Чтобы использовать массивы MATLAB® в Python®, можно или установить механизм Python прежде, чем запустить пакетное приложение, как описано в Установке Engine API MATLAB для Python (MATLAB), или использовать import mypackage
перед import matlab
в следующих программах.
API MATLAB Engine для Python обеспечивает пакет Python под названием matlab
это позволяет вам вызвать функции MATLAB из Python. matlab
пакет обеспечивает конструкторов, чтобы создать массивы MATLAB в Python. Это может создать массивы любого MATLAB числовой или логический тип от типов последовательности Python. Поддерживаются многомерные массивы MATLAB. Для списка других поддерживаемых типов массивов смотрите Данные о Передаче к MATLAB из Python (MATLAB).
Создайте массив MATLAB в Python и вызовите функцию MATLAB на нем. Предположение, что у вас есть пакет под названием mypackage
и метод под названием mysqrt
в пакете можно использовать matlab.double
создать массив типа double, учитывая список Python, который содержит числа. Можно вызвать функцию MATLAB mysqrt
на x
, и возвращаемым значением является другой matlab.double
массив как показано в следующей программе:
import matlab import mypackage pkg = mypackage.initialize() x = matlab.double([1,4,9,16,25]) print(pkg.mysqrt(x))
Выход:
[[1.0,2.0,3.0,4.0,5.0]]
Создайте многомерный массив. magic
функция возвращает 2D массив в осциллограф Python. Принятие вас имеет метод под названием mysqrt
в mypackage
, можно использовать следующий код, чтобы вызвать тот метод:
import matlab import mypackage pkg = mypackage.initialize() x = matlab.double([1,4,9,16,25]) print(pkg.mymagic(6))
Выход:
[[35.0,1.0,6.0,26.0,19.0,24.0],[3.0,32.0,7.0,21.0,23.0,25.0], [31.0,9.0,2.0,22.0,27.0,20.0],[8.0,28.0,33.0,17.0,10.0,15.0], [30.0,5.0,34.0,12.0,14.0,16.0],[4.0,36.0,29.0,13.0,18.0,11.0]]