Можно ли использовать модули Python в Octave? - PullRequest
5 голосов
/ 07 июня 2011

Я хочу написать функции для Octave, используя Python. Google не помог выяснить, можно ли каким-либо образом импортировать / включать / какие-либо модули Python в Octave и вызывать их, как если бы они были родными функциями .m. Я посмотрел на Cython, который создает исходный код C из Python, но он использует объекты Python в качестве аргументов и возвращаемых типов. Можно ли использовать модули Python в Octave?

Ответы [ 2 ]

2 голосов
/ 07 июня 2011

К сожалению, не существует простого способа сделать это.

Тем не менее, всегда можно запустить программу на Python и проанализировать вывод. На самом деле

Вы можете выполнить любую команду оболочки используя функцию system (cmd, flag). Второй аргумент является необязательным. Если оно присутствует вывод команды возвращается системой в виде строки. Если не поставляется, любой вывод из команда печатается, с стандартный вывод фильтруется через пейджер.

Например:

output = system ("python /home/user/some_algoritmh.py", 1)
0 голосов
/ 09 декабря 2014

На Github существует проект pyoctave, который является расширением C ++ для Octave и может вызывать функции модулей Python.Вы должны скомпилировать расширение один раз, чтобы создать oct-файл, и можете использовать этот oct-файл для вызова кода Python.

Код на Github

...