主要内容

生成一个Python打包并构建一个Python应用程序

金宝app支持平台:窗户®, Linux®Mac

这个例子展示了如何创建一个Python®程序包®函数,并将生成的包集成到Python应用程序中。

先决条件

创建函数MATLAB

在MATLAB中,检查您想要打包的MATLAB代码。对于本例,编写一个函数makesqr.m

函数makeqr (x) y = magic(x);disp (y)

在MATLAB命令提示符处,输入makesqr (5)

输出是5x5矩阵。

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

创建Python应用程序使用库编译程序

属性将函数编译为Python包库的编译器或者,如果你想使用编程方法从MATLAB命令窗口创建一个Python包,请参见使用compiler.build.pythonPackage创建Python包

  1. MATLAB应用程序Tab,在最右边应用程序段,单击箭头。在应用程序部署,点击库的编译器

    或者,您可以打开库的编译器应用程序从MATLAB命令提示符。

    libraryCompiler

    编译器选项卡,打开库编译器应用程序

  2. 类型部分的工具条,单击Python包

    库的编译器app项目窗口,指定要部署的MATLAB应用程序的文件。

    1. 导出功能部分的工具条,单击向项目添加导出函数

    2. 添加文件窗口,浏览到示例文件夹,并选择要打包的函数。点击开放

    将该函数添加到导出函数文件列表中。重复此步骤,在同一个应用程序中打包多个文件。

    对于本例,选择makesqr.m您之前编写的文件。

  3. 包装选项段,决定是否包含MATLAB运行时安装程序在生成的应用程序中选择一个选项:

    • 从网页下载运行时—生成一个安装程序来下载MATLAB运行时并将其与已部署的MATLAB应用程序一起安装。您可以指定安装程序的文件名。

    • 包中包含的运行时—生成一个包含MATLAB运行时安装程序。您可以指定安装程序的文件名。

      请注意

      第一次选择此选项时,系统会提示您下载MATLAB运行时安装程序。

指定包设置

接下来,定义Python包的名称。

  • 库名称字段将自动填充makesqr作为包的名称。重命名它为MagicSquarePkg.有关Python包命名要求的更多信息,请参见导入编译的Python包

创建示例驱动程序文件

您可以将MATLAB文件添加到项目中,以生成示例Python驱动程序文件。尽管创建包并不需要Python驱动程序文件,但您可以使用它们来实现Python应用程序,如安装和运行MATLAB生成的Python应用程序

样品部分中,选择创建新的样本,然后单击makesqr.m.打开一个MATLAB文件供您编辑。

%演示函数y = makeqr (x)执行的示例脚本x = 0;%初始化xy = makesqr (x);

改变x = 0x = 4,保存文件,并返回库的编译器应用程序。

有关更多信息和限制,请参见驱动文件创建示例

自定义应用程序及其外观

库的编译器应用程序,您可以自定义安装程序,自定义您的应用程序,并添加有关应用程序的更多信息。

  • 图书馆信息—已部署的应用信息。您还可以通过更改应用程序图标和启动屏幕来定制应用程序的外观。生成的安装程序使用此信息填充已安装的应用程序元数据。看到自定义安装程序

  • 额外的安装选项-生成的安装程序和自定义logo选择的默认安装路径。看到更改安装路径

  • 库运行所需的文件-生成的应用程序运行所需的附加文件。这些文件包含在生成的应用程序安装程序中。看到管理编译器项目所需的文件

  • 为您的最终用户安装的文件-随应用程序安装的文件。

    看到指定与应用程序一起安装的文件

用于自定义应用程序的库编译器应用程序中的字段

打包应用程序

当您完成选择您的打包选项,保存您的库的编译器项目并生成打包的应用程序。

  1. 点击

    在“保存项目”对话框中,指定保存项目的位置。

  2. 对话框,进行验证当流程完成时打开输出文件夹被选中。

    打包过程完成后,在目标文件夹中检查生成的输出。

    • 生成三个文件夹:for_redistributionfor_redistribution_files_only,for_testing

      有关在这些文件夹中生成的文件的详细信息,请参见文件生成后包装MATLAB函数

    • 日志文件PackagingLog.html包含包装的结果。

创建Python包使用compiler.build.pythonPackage

作为替代库的编译器app,你可以按照以下步骤使用编程方法创建Python包。

  1. 将以下代码保存在一个名为makesqrSample1.m

    x = 4;一个= 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在当前工作目录中:

    • 样品\ makesqrSample1.py- Python示例驱动程序文件。

    • GettingStarted.html- HTML文件,包含关于集成包的信息。

    • mccExcludedFiles.log-日志文件,其中包含应用程序中未包含的工具箱函数的列表。有关不支持的函数的信息,请参见金宝appMATLAB编译器限制

    • 固定—包含封装和接口信息的文本文件。

    • requiredMCR下载188bet金宝搏Products.txt—包含所需产品的产品id的文本文件下载188bet金宝搏MATLAB运行时以运行应用程序。

    • setup . py-安装包的Python文件。

    • unresolvedSymbols.txt-包含未解析符号信息的文本文件。

    请注意

    生成的包不包括MATLAB运行时或一个安装程序。使用。创建安装程序buildResults对象,看到compiler.package.installer

    属性中可以指定其他选项compiler.build命令,使用以下一个或多个名称-值参数:

    • “AdditionalFiles”-要包含在包中的附加文件的路径。

    • “AutoDetectDataFiles”—自动包含数据文件的标志。

    • “OutputDir”—生成文件所在的输出目录的路径。

    • “PackageName”—生成包的名称。

    • “SampleGenerationFiles”- MATLAB示例文件用于生成示例Python包文件。有关更多信息,请参见驱动文件创建示例

    • “详细”-显示进度信息的标志,指示编译器在构建过程中的输出。

安装和运行MATLAB生成的Python应用程序

创建Python包后,可以从Python应用程序调用它。此示例使用打包期间生成的样例Python代码。您可以使用此示例Python应用程序代码作为编写自己的Python应用程序的指南。

  1. 复制并粘贴生成的Python文件makesqrSample1.py样品文件夹中包含setup . py文件。

  2. 在系统命令提示符处,导航到包含makesqrSample1.pysetup . py

  3. 使用。安装应用程序python命令。

    python setup . py install

    若要安装到默认位置以外的位置,请参考Python官方文档中的“安装Python模块”。

  4. 运行应用程序。如果在打包步骤中使用示例MATLAB代码,则该应用程序将返回与示例代码相同的输出。

    python makesqrSample1.py

    请注意

    macOS,你必须使用mwpython脚本而不是python.例如,mwpython makesqrSample1.py

    mwpython脚本位于matlabroot/ bin文件夹,matlabroot是MATLAB安装的位置。

另请参阅

||||