首页 > 解决方案 > 无法让 matlab.engine 在 M1 Mac 上工作

问题描述

我有一个MacBook Pro M1运行Big Surpython 3.8Matlab R2020b在rosetta2下运行都很好。

由于我需要在我的 python 脚本中使用一个 Matlab 函数,因此我想在我的 python 脚本中使用 Matlab.engine 并按照 sudo 权限而python3不是pythonon 的说明进行操作:

https://www.mathworks.com/help/matlab/matlab_external/install-the-matlab-engine-for-python.html

然后我进入python3终端并尝试import matlab.engine导致错误:No module named 'matlab.engine'; 'matlab' is not a package

我的.zshrc文件包含我的 Python 的路径。我试过export PATH="/Users/flo/Library/Python/3.8/bin:$PATH"了,因为那没有用,我也试过了export PATH="/Library/Python/3.8:$PATH"

Matlab 也在我的路上,因为我可以matlab从终端调用它并按预期启动。这只是matlab.engine我无法运行。

由于我想通过它实现的唯一一件事是调用包含 a 的脚本function with 2 input and 7 output arguments(我需要在 python 中进行进一步计算),是否有另一种方法可以在不需要 的matlab.engine情况下做到这一点,以防万一它在运行吗?

标签: pythonfunctionmatlab

解决方案


哦,天哪,我可以解决这个问题,我在发布问题后几分钟就解决了好几天。

看来,我pip3 install matlab几周/几个月前做过,但不记得了。当我尝试时import matlab.engine,python 想,我想从 pipengine安装的导入。matlab这就是为什么我得到错误,那个 matlab 不是一个包。

只需pip3 uninstall matlab为我解决这个问题!希望,这可以帮助其他人挽救我浪费在如此愚蠢的错误上的日子。


推荐阅读