Я хочу вызывать модули Python или пользовательские функции / скрипты, которые я построил в Python через Matlab. Я знаю о многих вещах, которые мне нужно охватить, прежде чем что-то подобное станет возможным, я составлю список всего, что я сделал до сих пор.
- Создал виртуальную среду с Anaconda и установил все необходимые мне зависимости. Python версия 3.5.2
- Запустил скрипты, используя PyCharm, и все работает хорошо / как и ожидалось.
- При запуске
pyversion(mypath)
в Matlab, хотя он выглядит "загружен: 1", я не могу ничего вызвать в модуле site-packages. Например, я даже не могу назвать что-то вроде numpy (py.importlib.import_module('numpy')
), потому что я получаю следующую ошибку:
Ошибка Python: ошибка импорта:
Не удалось импортировать модуль расширения с несколькими массивами. Наиболее
скорее всего, вы пытаетесь импортировать неудачную сборку numpy.
Если вы работаете с NumPy Git-репо, попробуйте git clean -xdf
(удаляет все
файлы не находятся под контролем версий). В противном случае переустановите NumPy.
Первоначальная ошибка: загрузка DLL не удалась: указанный модуль не найден.
Я проверил все, что мог до сих пор. Python и Matlab (2016a) являются 64-битными. Хотя я могу запустить небольшой фрагмент кода с ожидаемым результатом:
T = 'MATLAB(R) is a high-level language'
wrapped = py.textwrap.wrap(T);
whos wrapped
Поскольку я могу выполнить все правильно из PyCharm, а я не могу со стороны Matlab, мне интересно, есть ли какие-либо ограничения для включения из Matlab или Anaconda (в конфигурации).
Есть ли в конфигурации Anaconda параметр, который, возможно, не позволяет мне сделать это? Или это проблема в Matlab? Я не уверен, я не в курсе.