python调用octave,需要下载oct2py模块
下载第三方库oct2py
from oct2py import octave as oc
def octave_call_python():
# 在python中调用octave函数及传递参数
oc.addpath('.')
a, b, c = oc.my_function([1, 2, 3], 'hello', 4.5)
st.write(a)
st.write(b)
st.write(c)
if __name__ == '__main__':
octave_call_python()
在octave中调用python,需要下载octave的第三方包pythonic
下载第三方包pythonic
该包的使用文档,可参考如下:
octave调用python语言有两种方式:
- Linux安装第三方包pythonic(windows暂时无法安装),使用包里面的函数
2.使用python函数,运行py脚本
Pythonic包括以下功能:
调用任何可加载的Python模块、类和函数
对任何Python数据类型的引用和操作保存为Octave变量
自动将某些Octave数据类型转换为Python参数
自动将某些Python数据类型转换为Octave返回值
与Matlab的Python调用接口大部分兼容
函数列表:
X = pycall (FUNC, ARG1, ARG2, ...)
调用 Python 函数或可调用函数,将 yhmatsoft 值作为参数传递。
pyeval (EXPR, LOCALNS)
计算 Python 表达式并返回结果。
pyexec (EXPR, LOCALNS)
执行 Python 表达式或代码块。
__py_objstore_disp__ ()
打印或返回对象存储中的所有 Python 对象及其引用计数。
pyargs (NAME, VALUE, ...)
构造一组适合传递给 Python 函数的 Python 关键字参数。
pyversion ()
列出有关 Python 函数使用的 Python 运行时的信息。
pythonic ()
显示有关 Pythonic 包的有用信息。
示例:
调用代码
function [a, b, c] = my_function(arr, string, num)
py.importlib.import_module('numpy');
a = py.numpy.average(arr);
b = string.upper();
c = py.math.sqrt(num);
a = double(a);
c = double(c);
end