python 调用octave

本文介绍了如何使Python与Octave协同工作,通过在脚本中指定Octave的位置使其可执行,使用mat文件保存并传递计算结果,最后在Python中调用脚本并加载计算结果进行进一步处理。示例展示了矩阵的计算与交互过程。
摘要由CSDN通过智能技术生成


python是一个强大的胶水语言,兼具重量级编程语言(如java)和轻巧的脚本(如shell)的优点。实验中处理数据库和文本解析的工作都可以交给它来完成。虽说python也能利用numpy,scipy处理科学计算问题,但是里面同时定义了array和matrix还有稀疏矩阵,每种对象的处理方式都不同,很是头大。

Otave和matlab高度兼容,又兼具开源和轻量的特点,用来处理矩阵计算最合适,特别是很多算法可以向量化(vectorization)更使得计算过程简洁美观实用。

能不能让它们一起工作呢?

第一步:让octave可以当作脚本执行。

在脚本的头部写上:

#!/usr/bin/env /Applications/Octave.app/Contents/Resources/bin/octave -qf

告诉操作系统这个可执行的脚本可以用什么可执行文件来执行,这里我们指定了octave在mac os里的位置。windows的位置也可以被找到,然后填进去。

然后让这个文件是可执行的

chmod a+x octaveScipt.m

第二步:保存octave的运行结果到mat文件

如果python和octave有计算结果的传输。那么就需要借助mat文件了。

save('-v7','computeResult.mat')

注意:需要指明保存mat文件的版本,如果是octave默认版本,python 的scipy.io读取不了。

第三步:python调用octave脚本,载入octave脚本计算结果

只要利用python执行外部的脚本的命令就可以了,

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值