配置您的系统使用 Python
Python 支持
要在 MATLAB® 中调用 Python® 模块,您必须在您的系统上安装受支持的参考实现 (CPython) 版本。安装一个发行版,例如 https://www.python.org/downloads/ 上提供的发行版。MATLAB 不支持从 Microsoft® 商店安装的 CPython 版本。有关支持的版本信息,请参阅 MATLAB 产品(按版本)兼容的 Python 版本。
如果您使用的是 Windows® 平台,则需要安装一个发行版(如果尚未安装)。有关详细信息,请参阅安装支持的 Python 实现。
如果您在 Linux® 平台上,您可能已安装 Python。调用
pyenv以验证您是否安装了受支持的版本。有关下载信息,请参阅安装支持的 Python 实现。如果您使用的是 Mac 平台,请验证 MATLAB 和 Python 版本是否与您的架构(Apple 芯片或 Intel® 处理器)一致。有关详细信息,请参阅如何在使用 Apple 芯片的 Mac 上从 MATLAB 使用 Python。
当您使用 py 命名空间从 MATLAB 键入 Python 表达式时,MATLAB 会选择并加载一个 Python 解释器,例如 py.list。要更改解释器,请执行以下操作:
如果在
InProcessExecutionMode中加载了 Python,则重新启动 MATLAB 并使用新版本信息或执行模式调用pyenv。如果在
OutOfProcess模式下加载了 Python,则在使用新版本信息或执行模式调用pyenv之前,通过调用终止 (terminateterminate) 与 Python 解释器关联的进程。
MATLAB 在加载 Python 解释器时访问以下设置:
使用
pyenv函数配置的 Python 环境的用户设置。如果您指定的版本与PYTHONHOME指定的版本冲突,则在调用pyenv之前删除环境变量。由pyenv设置的值可跨 MATLAB 会话而保持不变。有关详细信息,请参阅 在 Windows 平台上设置 Python 版本 或 在 Mac 和 Linux 平台上设置 Python 版本。PYTHONHOME环境变量,指定如果pyenv.Status的值为NotLoaded,在哪里可以找到标准 Python 库。要查看 MATLAB 中变量的值,请键入getenv("PYTHONHOME")。有关详细信息,请参阅使用 PYTHONHOME 环境变量。系统
PATH环境变量。要查看 MATLAB 中的系统路径,请键入getenv("PATH")。Windows 注册表。
要验证您的系统上是否安装了 Python,请从系统提示符下打开 Python 解释器,并调用 Python 函数。
要确定使用的是哪个版本的 MATLAB,请调用 pyenv。例如,在 Windows 上:
pe = pyenv
pe =
PythonEnvironment with properties:
Version: "3.10"
Executable: "C:\Users\username\AppData\Local\Programs\Python\Python310\pythonw.exe"
Library: "C:\Users\username\AppData\Local\Programs\Python\Python310\python310.dll"
Home: "C:\Users\username\AppData\Local\Programs\Python\Python310"
Status: NotLoaded
ExecutionMode: InProcess
在 Linux 上:
pe = pyenv
pe =
PythonEnvironment with properties:
Version: "3.9"
Executable: "/usr/bin/python3"
Library: "libpython3.9.so.1.0"
Home: "/usr"
Status: NotLoaded
ExecutionMode: InProcess安装支持的 Python 实现
访问
https://www.python.org/downloads/并滚动到 Looking for a specific release(查找特定版本)部分。找到您需要的版本,然后点击 Download(下载)。有关支持的版本信息,请参阅 MATLAB 产品(按版本)兼容的 Python 版本。
点击 64 位版本所需的格式,然后按照在线说明进行操作。
如果您收到错误消息 无法解析名称 py.myfunc,则可能存在安装问题。
在虚拟环境中安装 Python
您可以使用 Python venv 模块为特定版本的 Python 创建虚拟环境。您还可以在虚拟环境中安装 MATLAB Engine API for Python。有关 venv 的说明,请参阅 MATLAB Answers™ 文章使用 MATLAB 的 Python 虚拟环境。有关虚拟 Python 环境的信息,请参阅 Python 教程虚拟环境和包。
在 Windows 平台上设置 Python 版本
在 Windows 平台上,使用以下任一方式:
pyenv(Version="version")
或
pyenv(Version="executable")
其中 executable 是 Python 可执行文件的完整路径。有关详细信息,请参阅 pyenv 的 Version 名称-值参量。例如,在 Windows 系统上,将 Python 版本设置为 3.11。
pyenv(Version="3.11");注意
如果您下载了一个 Python 解释器,但未将其注册到 Windows 注册表中,请使用:
pyenv(Version="executable")
例如,键入:
pyenv(Version="C:\Users\username\AppData\Local\Programs\Python\Python311\python.exe");
在 Windows 平台上下载 Python 的 64 位版本
Python 的架构必须与 MATLAB 的架构匹配。有关详细信息,请参阅安装支持的 Python 实现。
在 Mac 和 Linux 平台上设置 Python 版本
要设置版本,请键入:
pyenv(Version="executable")
其中 executable 是 Python 可执行文件的完整路径。有关详细信息,请参阅 pyenv 的 Version 名称-值参量。例如,键入:
pyenv(Version="/usr/bin/python3.11")编译 Python 可执行文件的要求
在 Linux 和 macOS 系统上,如果您要编译 Python 可执行文件,请使用 --enable-shared 选项对编译进行配置。您可以在配置 Python 文档中查看 Python configure 脚本选项。
使用 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 版本。当您使用 py 命名空间从 MATLAB 键入 Python 语句时,MATLAB 会加载一个 Python 解释器,例如 py.sys.path。要更改解释器,请执行以下操作:
如果在单一 MATLAB 会话中的
InProcessExecutionMode中加载了 Python,则重新启动 MATLAB 并使用新版本信息运行pyenv。如果在
OutOfProcess模式下加载了 Python,则在使用新版本信息调用pyenv之前调用terminate。