使用Python运行Matlab时出现“没有名为matlab.engine的模块”错误

pxiryf3j  于 2022-12-17  发布在  Python
关注(0)|答案(5)|浏览(773)

我正在尝试使用Python运行Matlab代码。我尝试按照这个X1 E0 F1 X上给出的说明操作。
当尝试通过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(R2015 a)

beq87vna

beq87vna1#

您需要安装Matlab Engine for Python,但不能使用pip安装。请尝试here列出的说明。我已将说明简要列出如下:
1.确保您的PATH中有Python。
1.找到Matlab根文件夹。您可以使用Matlab中的matlabroot命令找到它。
1.转到命令行中的Matlab根文件夹。

  1. cd "matlabroot\extern\engines\python"(在Windows中)
  2. python setup.py install
cwxwcias

cwxwcias2#

我在这个问题上纠结了很久,我找不到一个好的解释,所以这里有一个python的包,叫做matlabx 1 e0f1x
它和python的matlab引擎无关,当你pip安装matlab的时候,它会安装这个,我用的是pycharm,这是它默认安装的,我卸载了这个matlab,相反,我把必要的信息复制到了我的python项目中。
为此,我找到了名为Matlab的文件夹,当您setup.py在matlabroot/extern/engines/python中运行python www.example.com install时,该文件夹被复制到AppData中的某个位置,并将其复制到我的python项目的venv中的lib文件夹,因为我正在使用pycharm的虚拟环境解释器。

k97glaaz

k97glaaz3#

pip install matlab提供this,它安装一个带有

from numpy import *
from pylab import *

我很确定这不是你想要的。
我猜你尝试过导入Matlab编译器运行时的Python。这必须安装相应的软件从Mathworks虽然,它不来通过Python包的索引/ pip。检查指令on their site

l3zydbqr

l3zydbqr4#

您可以访问MATLAB官方文档: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"

在matlab19bPy36子文件夹中安装R2019b程序包:

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"
jecbmhm3

jecbmhm35#

我也做了同样的事。安装matlab使用
管道安装matlab
得到相同的误差No module named 'matlab.engine'; 'matlab' is not a package.
然后我查看了安装MATLAB Engine API for Python的官方文档,并从那里按照安装步骤操作。
对我来说,
管道安装matlabengine
解决了问题!

相关问题