主要内容

安装并配置 Python 以在 MATLAB 中使用

R2026b

要从 MATLAB® 中调用 Python®,您必须在您的系统上安装受支持的参考实现 (CPython) 版本。您还必须配置您的 Python 环境以与 MATLAB 配合使用。

检查现有 Python 安装

如果您已安装 Python,请在 MATLAB 产品(按版本)兼容的 Python 版本中检查 MATLAB 是否支持您的 Python 版本。

您现有的 Python 安装还必须满足以下特定于平台的要求:

  • Windows® - 已安装 64 位版本的 Python。不支持 32 位版本。

  • Windows - Python 不是从 Microsoft® Store 安装的。

  • Linux® 和 Mac - 如果您是从源代码编译 Python,则已使用 --enable-shared 选项配置编译。有关详细信息,请参阅 Python 文档中的配置 Python。

  • Mac - 您的 MATLAB 和 Python 安装具有相同的架构(Apple 芯片或 Intel® 处理器)。有关详细信息,请参阅如何在使用 Apple 芯片的 Mac 上从 MATLAB 使用 Python。

安装 Python

如果您的系统上未安装受支持的 Python 版本,您可以从 MATLAB 中的“附加功能”面板或从 python.org 安装。

从 MATLAB 的“附加功能”面板安装 Python

自 R2026b 起

要从 MATLAB 中的“附加功能”面板安装 Python,请按照以下步骤进行操作:

  1. 通过点击桌面左边栏上的“附加功能”图标 ,打开“附加功能”面板。如果“附加功能”图标未出现,请点击“打开更多面板”按钮 并选择“附加功能”面板。

  2. 搜索文本 MATLAB Support for Python。

  3. 选择要安装的 Python 版本对应的附加功能。

  4. 点击安装按钮。

您现在可以使用 pyenv 或“外部语言”面板选择此已安装的 Python 版本作为您的 Python 环境。有关详细信息,请参阅Manage Python Environments Using External Languages Panel。

从 python.org 安装 Python

要从 python.org 安装 Python,请按照以下步骤进行操作:

  1. 转至 https://www.python.org/downloads/ 并滚动到 Looking for a specific release(查找特定版本)部分。

  2. 找到您需要的版本,然后点击 Download(下载)。有关支持的版本信息,请参阅 MATLAB 产品(按版本)兼容的 Python 版本。

  3. 点击要安装的格式,然后按照在线说明进行操作。

    • 在 Windows 上,选择 64 位格式。

    • 在 Linux 和 Mac 上,如果从源代码编译 Python 可执行文件,请使用 --enable-shared 选项配置编译。有关更多详细信息,请参阅 Python 文档中的配置 Python。

配置 MATLAB 以使用 Python 环境

您可以配置 MATLAB 以使用基础环境(系统范围的 Python 安装)或虚拟环境(隔离的、特定于工程的 Python 包文件夹)。如果您还没有虚拟环境,可以使用“外部语言”面板从基础环境创建一个虚拟环境(请参阅Manage Python Environments Using External Languages Panel)。或者,要以编程方式创建一个虚拟环境,请参阅 MATLAB 文章使用 MATLAB 的 Python 虚拟环境和 Python 教程虚拟环境和包。

要设置您的 Python 环境,请使用“外部语言”面板、pyenv 函数或 PYTHONHOME 环境变量。

使用“外部语言”面板选择 Python 环境

自 R2026a 起

配置 MATLAB 以使用 Python 的最简单方法是使用“外部语言”面板选择基础环境或虚拟环境。

  1. 要打开“外部语言”面板中的 Python 视图,请点击任一边栏上的“打开更多面板”按钮 ,然后点击 外部语言。然后从面板左上角的语言列表中选择 Python 选项。

  2. 通过右键点击所有 Python 环境部分中的某个环境,并选择设置为选定环境,选择您首选的基础或虚拟 Python 环境。

选定环境会显示在“外部语言”面板的选定 Python 环境部分中。

有关详细信息,请参阅Manage Python Environments Using External Languages Panel。

在 Windows 上设置 Python 版本

如果您使用标准安装程序安装了 Python,则 Python 会注册在 Windows 注册表中。使用 pyenv 的 Version 名称-值来设置要使用的 Python 版本。例如:

pyenv(Version="3.13");

如果您执行的是非标准安装,例如在没有运行安装程序的情况下将 Python 文件复制到计算机,请使用基础环境或虚拟环境的 Python 可执行文件路径设置 Python 版本。例如:

pyenv(Version="C:\Users\username\AppData\Local\Programs\Python\Python313\python.exe");

pyenv 返回 PythonEnvironment 对象,其中包含有关当前 Python 环境的信息。

  PythonEnvironment with properties:

          Version: "3.13"
       Executable: "C:\Users\username\AppData\Local\Programs\Python\Python313\python.exe"
          Library: "C:\Users\username\AppData\Local\Programs\Python\Python313\python313.dll"
             Home: "C:\Users\username\AppData\Local\Programs\Python\Python313"
           Status: NotLoaded
    ExecutionMode: InProcess

在 Mac 和 Linux 上设置 Python 版本

要在 Mac 和 Linux 上设置要使用的 Python 版本,请使用 pyenv 的 Version 名称-值来指定基础环境或虚拟环境的 Python 可执行文件的完整路径。例如:

pyenv(Version="/usr/bin/python3.13")

pyenv 返回 PythonEnvironment 对象,其中包含有关当前 Python 环境的信息。

  PythonEnvironment with properties:

          Version: "3.13"
       Executable: "/usr/bin/python3"
          Library: "libpython3.13.so.1.0"
             Home: "/usr"
           Status: NotLoaded
    ExecutionMode: InProcess

使用 PYTHONHOME 环境变量

尽可能使用“外部语言”面板或 pyenv 来设置 Python 版本。在该面板或 pyenv 不可用的情况下,例如在运行 MATLAB App 时,设置版本的另一种方法是使用 PYTHONHOME 环境变量。如果用 pyenv 和 PYTHONHOME 设置版本,则版本必须相同。

  • 要查看环境变量的值,请在 MATLAB 命令提示符下输入 getenv("PYTHONHOME")。要查看由 pyenv 设置的版本,请输入 e = pyenv; e.Version

  • 要设置 PYTHONHOME,请参阅 https://docs.python.org/3/using/cmdline.html#envvar-PYTHONHOME。有关设置环境变量的信息,请参考您的操作系统文档。您也可以使用 setenv 设置该变量。但是,此设置仅应用于当前 MATLAB 会话。

  • 要删除当前 MATLAB 会话的 PYTHONHOME,请输入 unsetenv("PYTHONHOME")。

更改执行模式(可选)

在您选择 Python 环境后,MATLAB 不会立即加载 Python 解释器。加载会在您首次在 MATLAB 中调用 Python 函数时发生。在首次调用之前,您可以选择更改 Python 的执行模式。您可以在与 MATLAB 相同的进程中(InProcess 模式)或在单独进程中(OutOfProcess 模式)执行 Python。

  • 默认情况下,Python 在 InProcess 模式下运行。此执行模式具有性能优势,建议用于运行现有 Python 代码。

  • 如果您正在积极开发 Python 代码,请将执行模式设置为 OutOfProcess。此模式可保护您的 MATLAB 会话免受不稳定代码崩溃的影响,并允许您使用 Ctrl+C 键中断长时间运行的 Python 代码。另外,如果您需要使用与 MATLAB 冲突的第三方库,请使用 OutOfProcess 模式。

要设置执行模式,请在“外部语言”面板中点击“设置”按钮 ,然后选择 OutOfProcess。或者,在 MATLAB 命令提示符下输入 pyenv(ExecutionMode="OutOfProcess")。有关详细信息,请参阅Python 功能的进程外执行。

确认 Python 可与 MATLAB 配合使用

要确认 Python 可与 MATLAB 配合使用,请在 MATLAB 中输入 Python 表达式以加载 Python 解释器。例如:

py.list
ans = 

  Python list with values:

    []

    Use string, double, datetime or cell function to convert to a MATLAB array.

如果您收到错误消息 Unable to resolve the name py.myfunc,其中 myfunc 是函数名称,则可能存在安装问题。有关故障排除方面的帮助,请参阅无法解析名称 py.myfunc。

MATLAB 在加载 Python 解释器时访问以下设置:

  • 使用 pyenv 函数配置的 Python 环境的用户设置。如果您指定的版本与 PYTHONHOME 环境变量指定的版本冲突,请在调用 pyenv 之前清除该环境变量。要清除该环境变量,请在 MATLAB 命令提示符下输入 unsetenv("PYTHONHOME")。由 pyenv 设置的值会在 MATLAB 会话之间保持不变。有关详细信息,请参阅 在 Windows 上设置 Python 版本 或 在 Mac 和 Linux 上设置 Python 版本。

  • PYTHONHOME 环境变量,指定在何处查找标准 Python 库。MATLAB 仅在 pyenv.Status 的值为 NotLoaded 时使用此变量。要查看 MATLAB 中变量的值,请输入 getenv("PYTHONHOME")。有关详细信息,请参阅使用 PYTHONHOME 环境变量。

  • 系统 PATH 环境变量。要查看 MATLAB 中的系统路径,请输入 getenv("PATH")。

  • Windows 注册表。

切换 Python 环境

您可以通过“外部语言”面板或调用 pyenv 来更改 MATLAB 使用的 Python 环境。更改 Python 环境的过程取决于执行模式。

  • 如果 Python 以 InProcess 模式加载,请先重新启动 MATLAB。然后,使用“外部语言”面板或 pyenv 更改 Python 环境。

  • 如果 Python 以 OutOfProcess 模式加载,请先通过调用 terminate(pyenv) 终止 Python 进程。然后,使用“外部语言”面板或 pyenv 更改 Python 环境。

要从“外部语言”面板中删除旧的 Python 环境,请右键点击所有 Python 环境列表中的该环境,然后选择删除环境。删除环境不会将其从系统中删除。您可以稍后重新添加它。您无法以这种方式删除从 MATLAB Support for Python 附加功能安装的环境。要删除该环境,请从“附加功能”面板卸载支持包,然后使用“刷新”按钮刷新“外部语言”面板。

另请参阅

函数

主题

外部网站