我正在尝试使用 Python 运行 Matlab 代码。我尝试按照此 Mathworks 页面 上给出的说明进行操作。
当尝试通过Python导入Matlab时,它是使用
pip install matlab
安装的。
但是,导入
matlab.engine
会出现错误 No module named 'matlab.engine'; 'matlab' is not a package
。也无法使用 pip install engine
安装。
如何让代码运行?我正在运行的Python代码如下:
import matlab.engine
eng = matlab.engine.start_matlab()
eng.triarea(nargout=0)
Python 版本 - 3.5
Matlab 版本 - 8.5.0.197613 (R2015a)
需要安装Matlab Engine for Python,无法使用pip安装。请尝试此处列出的说明。我在下面简要列出了说明:
matlabroot
命令来查找它。
cd "matlabroot\extern\engines\python"
(在 Windows 中)
python setup.py install
为此,我找到了名为 Matlab 的文件夹,当您在 matlabroot/extern/engines/python 中运行 python setup.py install 时,该文件夹会复制到 AppData 中的某个位置,并将其复制到我的 python 项目的 venv 中的 lib 文件夹中,因为我'我正在使用 pycharm 的虚拟环境解释器。
https://www.mathworks.com/help/matlab/matlab_external/install-the-matlab-engine-for-python.html
我也复制到这里了为多个 MATLAB 版本安装 Python 引擎 您可以通过将 MATLAB Python 包安装到特定于版本的位置来指定从 Python 脚本运行的 MATLAB 版本。例如,假设您想要从 Python 版本 3.6 脚本调用 MATLAB R2019a 或 R2019b。
在 Windows 系统提示符下,将 R2019a 软件包安装在名为 matlab19aPy36 的子文件夹中:
cd "c:\Program Files\MATLAB\R2019a\extern\engines\python"
python setup.py install --prefix="c:\work\matlab19aPy36"
将 R2019b 软件包安装在 matlab19bPy36 子文件夹中:
cd "c:\Program Files\MATLAB\R2019b\extern\engines\python"
python setup.py install --prefix="c:\work\matlab19bPy36"
从 Linux 系统提示符处:
cd "/usr/local/MATLAB/R2019a/bin/matlab/extern/engines/python"
python setup.py install --prefix="/local/work/matlab19aPy36"
cd "/usr/local/MATLAB/R2019b/bin/matlab/extern/engines/python"
python setup.py install --prefix="/local/work/matlab19bPy36"
从 Mac 终端:
cd "/Applications/MATLAB_R2019a.app/extern/engines/python"
python setup.py install --prefix="/local/work/matlab19aPy36"
cd "/Applications/MATLAB_R2019b.app/extern/engines/python"
python setup.py install --prefix="/local/work/matlab19bPy36"
安装了matlab
pip 安装 matlab并得到了同样的错误
No module named 'matlab.engine'; 'matlab' is not a package.
MATLAB Engine API for Python的官方文档,并按照那里的安装步骤进行操作。
对于我来说,
pip 安装 matlabengine问题解决了!
https://pypi.org/project/matlabengine/#history 按照网页安装: https://au.mathworks.com/help/matlab/matlab_external/install-the-matlab-engine-for-python.html