Сгенерируйте пакет Python и создайте приложение Python

Поддерживаемые платформы: Windows®, Linux®, Mac

В этом примере показано, как создать Python® пакет из MATLAB® функционируйте и интегрируйте сгенерированный пакет в приложение Python.

Необходимые условия

  • Проверьте, что у вас есть версия Python, установленного, который совместим с MATLAB Compiler SDK™. Для получения дополнительной информации смотрите MATLAB Поддерживаемые Интерфейсы на Другие Языки.

  • У конечных пользователей должна быть установка MATLAB Runtime, чтобы запустить приложение. Для тестирования можно использовать установку MATLAB вместо MATLAB Runtime. Для получения дополнительной информации смотрите Установку и Сконфигурируйте MATLAB Runtime.

Создание функции в MATLAB

В MATLAB исследуйте код MATLAB, который вы хотите упакованный. В данном примере запишите функциональный makesqr.m.

function makesqr(x)
y = magic(x);
disp(y)

В командной строке MATLAB введите makesqr(5).

Выход 5x5 матриц.

    17    24     1     8    15
    23     5     7    14    16
     4     6    13    20    22
    10    12    19    21     3
    11    18    25     2     9

Создайте приложение Python Используя приложение Library Compiler

Скомпилируйте функцию в пакет Python с помощью приложения Library Compiler. В качестве альтернативы, если вы хотите создать пакет Python из окна команды MATLAB с помощью программируемого подхода, смотрите, Создают Пакет Python Используя compiler.build.pythonPackage.

  1. На вкладке MATLAB Apps, на ультраправом из раздела Apps, кликают по стреле. В Application Deployment нажмите Library Compiler.

    В качестве альтернативы можно открыть приложение Library Compiler из командной строки MATLAB.

    libraryCompiler

    Compiler tab with the Library Compiler app open

  2. В разделе Type панели инструментов нажмите Python Package.

    В окне проекта приложения Library Compiler задайте файлы приложения MATLAB, которое вы хотите развернуть.

    1. В разделе Exported Functions панели инструментов щелкнутьAdd exported function to the project.

    2. В окне Add Files просмотрите к папке в качестве примера и выберите функцию, которую вы хотите группировать. Нажмите Open.

    Функция добавляется к списку экспортируемых файлов функции. Повторите этот шаг, чтобы группировать несколько файлов в том же приложении.

    В данном примере выберите makesqr.m файл, который вы записали ранее.

  3. В разделе Packaging Options панели инструментов решите, включать ли инсталлятор MATLAB Runtime в сгенерированное приложение путем выбора одной из опций:

    • Runtime downloaded from web — Сгенерируйте инсталлятор, который загружает MATLAB Runtime и устанавливает его наряду с развернутым приложением MATLAB. Можно задать имя файла инсталлятора.

    • Runtime included in package — Сгенерируйте приложение, которое включает инсталлятор MATLAB Runtime. Можно задать имя файла инсталлятора.

      Примечание

      В первый раз, когда вы выбираете эту опцию, вам предлагают загрузить инсталлятор MATLAB Runtime.

Задайте настройки пакета

Затем задайте имя своего пакета Python.

  • Поле Library Name автоматически заполняется с makesqr как имя пакета. Переименуйте его как MagicSquarePkg. Для получения дополнительной информации об именовании требований для пакета Python смотрите Импорт Скомпилированные Пакеты Python.

Создайте демонстрационный файл драйвера

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

В разделе Samples выберите Create New Sample и нажмите makesqr.m. Файл MATLAB открывается для вас, чтобы отредактировать.

% Sample script to demonstrate execution of function y = makesqr(x)
x = 0; % Initialize x here
y = makesqr(x);

Измените x = 0 к x = 4, сохраните файл и возвратитесь к приложению Library Compiler.

Для получения дополнительной информации и ограничения, смотрите Демонстрационное Создание Файла Драйвера.

Настройте приложение и его внешний вид

В приложении Library Compiler можно настроить инсталлятор, настроить приложение и добавить больше информации о приложении.

  • Информация о библиотеке Информация о развертываемом приложении. Можно также настроить внешний вид приложения путем изменения значка приложения и экрана-заставки. Сгенерированный установщик использует эту информацию, чтобы заполнить установленные метаданные приложений. Смотрите Настраивают Инсталлятор.

  • Additional installer options — Путь к стандартной установке для сгенерированного инсталлятора и пользовательского выбора логотипа. Смотрите Изменение Путь к Установке.

  • Files required for your library to run — Дополнительные требуемые для запуска сгенерированного приложения файлы. Эти файлы включены в сгенерированное установщиком приложения. Смотрите Управляют Необходимыми Файлами в Проекте Компилятора.

  • Files installed for your end user — Файлы, которые установлены с вашим приложением.

    Смотрите задают файлы, чтобы установить с приложением.

Fields in the Library Compiler app for customizing your application

Группируйте приложение

По окончании выбрав ваши упаковочные опции, сохраняете свой проект Library Compiler и генерируете пакетное приложение.

  1. Нажмите Package.

    В диалоговом окне Save Project задайте местоположение, чтобы сохранить проект.

  2. В диалоговом окне Package проверьте, что Open output folder when process completes выбран.

    Когда упаковочный процесс будет завершен, исследуйте сгенерированный выход в целевой папке.

    • Сгенерированы три папки: for_redistribution, for_redistribution_files_only, и for_testing.

      Для получения дополнительной информации о файлах, сгенерированных в этих папках, смотрите Файлы, Сгенерированные После Упаковки функций MATLAB.

    • Файл журнала PackagingLog.html содержит упаковочные результаты.

Создайте пакет Python Используя compiler.build.pythonPackage

Как альтернатива приложению Library Compiler, можно создать пакет Python с помощью программируемого подхода с помощью следующих шагов.

  1. Сохраните следующий код в файле примера под названием makesqrSample1.m:

    x = 4;
    a = makesqr(x);

  2. Создайте пакет Python с помощью compiler.build.pythonPackage функционируйте и makesqr.m файл, который вы записали ранее. Используйте аргументы name-value, чтобы указать, что пакет называет и добавляет файл примера.

    buildResults = compiler.build.pythonPackage('makesqr.m',...
    'PackageName','MagicSquarePkg',...
    'SampleGenerationFiles','makesqrSample1.m');

    compiler.build.Results объект buildResults содержит информацию о типе сборки, сгенерированных файлах и опциях сборки.

  3. Функция генерирует следующие файлы в папке под названием MagicSquarePkgpythonPackage в вашей текущей рабочей директории:

    • samples\makesqrSample1.py — Демонстрационный файл драйвера Python.

    • GettingStarted.html — Файл HTML, который содержит информацию об интеграции вашего пакета.

    • mccExcludedFiles.log — Файл журнала, который содержит список любых функций тулбокса, которые не были включены в приложение. Для получения информации о неподдерживаемых функциях смотрите Ограничения MATLAB Compiler.

    • readme.txt — Текстовый файл, который содержит упаковку и интерфейсную информацию.

    • requiredMCRProducts.txt — Текстовый файл, который содержит идентификаторы продукта продуктов, требуемых MATLAB Runtime запустить приложение.

    • setup.py — Файл Python, который устанавливает пакет.

    • unresolvedSymbols.txt — Текстовый файл, который содержит информацию о неразрешенных символах.

    Примечание

    Сгенерированный пакет не включает MATLAB Runtime или инсталлятор. Создать инсталлятор, использующий buildResults возразите, смотрите compiler.package.installer.

    Можно задать дополнительные опции в compiler.build команда при помощи одного или нескольких следующих аргументов name-value:

    • 'AdditionalFiles' — Путь к дополнительным файлам, чтобы включать в пакет.

    • 'AutoDetectDataFiles' — Отметьте, чтобы автоматически включать файлы данных.

    • 'OutputDir' — Путь к выходной директории, которая содержит сгенерированные файлы.

    • 'PackageName'— Имя сгенерированного пакета.

    • 'SampleGenerationFiles'— Файлы примера MATLAB раньше генерировали демонстрационные файлы пакета Python. Для получения дополнительной информации смотрите Демонстрационное Создание Файла Драйвера.

    • 'Verbose'— Отметьте, чтобы отобразить информацию о прогрессе, указывающую на выход компилятора во время процесса сборки.

Установка и запуск MATLAB сгенерированное приложение Python

После создания вашего пакета Python можно вызвать его из приложения Python. Этот пример использует демонстрационный код Python, сгенерированный во время упаковки. Можно использовать этот демонстрационный код приложения Python в качестве руководства, чтобы записать собственное приложение Python.

  1. Скопируйте и вставьте сгенерированный файл Python makesqrSample1.py от samples папка в папку, которая содержит setup.py файл.

  2. В системной командной строке перейдите к папке, которая содержит makesqrSample1.py и setup.py.

  3. Установите приложение с помощью python команда.

    python setup.py install

    Чтобы установить на местоположении кроме значения по умолчанию, консультируйтесь "с Установкой Модули Python" в официальной документации Python.

  4. Запустите приложение. Если вы использовали демонстрационный код MATLAB на упаковочных шагах, это приложение возвращает тот же выходной параметр как пример кода.

    python makesqrSample1.py

    Примечание

    На macOS необходимо использовать mwpython скрипт вместо python. Например, mwpython makesqrSample1.py.

    mwpython скрипт расположен в matlabroot/ интервал папка, где matlabroot местоположение вашей установки MATLAB.

Смотрите также

| | | |