ImportError: Нет модуля с именем matlab.engine. Как импортировать matlab.engine в Pycharm? - PullRequest
0 голосов
/ 10 января 2019

Я хочу использовать MATLAB в Python и хочу обмениваться данными между Python и MATLAB. Так как в поиске по репозиторию нет «matlab.engine», то как мне установить matlab.engine в Pycharm? Другой вопрос, как мне установить локальный пакет в Pycharm?

1 Ответ

0 голосов
/ 10 января 2019

Этот вопрос очень полезен для начинающих MATLAB-Python, работающих в Pycharm. После того, как вы скомпилируете свой код MATLAB в пакет Python, вам необходимо представить его Python. Если вы программируете на Pycharm (который очень популярен), это становится как-то сложно. В этом контексте я рассматриваю два типа приложений MATLAB. Во-первых, это приложения, которые не принимают входные данные из основного файла Python. В этом случае в Pycharm перейдите в Файл -> Настройки -> Снаряжение -> Еще -> Показать все -> Показать пути к выбранному интерпретатору -> здесь вставьте каталог скомпилированного пакета MATLAB. Но использование Matlab.engine очень важно, и в большинстве случаев вам требуется обмен данными между Python и MATLAB. Нет прямого способа представить Pycharm Matlab.engine

Для этого перейдите к «редактировать переменные среды» и вставьте такой адрес в top :

C: \ MyPythonApplication \ venv \ scrips

См. Следующее изображение: enter image description here

Этим действием мы сообщим Windows рассмотреть файл python.exe в папке приложения Python для создания и настройки необходимых компонентов MATLAB.engine

Затем откройте cmd, работающий от имени администратора, перейдите в корневой каталог установки MATLAB и найдите такой каталог:

 cd C:\Program Files\MATLAB\R2018a\extern\engines\python\build\lib 

Затем введите:

python setup.py install

Вернитесь к «редактировать переменные среды» и удалите адрес, который вы вставили адрес вверху.

В типе Pycharm:

import matlab.egine

Скомпилируйте, и он выйдет из процесса с кодом 0

Удачи

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...