返回信息流小弟虽然写好了mat程序,但是为了方便演示,所以决定用python做一个简单的外壳,结果卡在那儿走不动。
采用的方法是通过com调用,具体函数代码如下(以下为py文件)
from win32com.client import Dispatch
h=Dispatch("Matlab.application")
h.execute("test()")
x,y=readResult()
return x,y
其中的test是用matlib写的示例程序,和上面的py在同一个目录下,在test中会创建一个同目录下的result.txt保存结果,然后通过readResult函数返回结果。
问题就是可以成功execute,但是无法生成相应的result.txt;但是如果单独运行test.m是可以生成相应的result文件的。很奇怪,既然execute没有报错,为啥没有result.txt的生成,求指导。
为了屏蔽实际程序,这里给出一个简单的test.m
function test()
clear all;
M=0.0;
N=512.0;
x=M:N;
y=[sin(x)];
fid=fopen('result.txt','a+');
m=length(x);
for i=1:1:m;
fprintf(fid,'%f',x(i));
fprintf(fid,',');
fprintf(fid,'%f',y(i));
fprintf(fid,'\n');
end
fclose(fid);
这是一条镜像帖。来源:北邮人论坛 / matlab / #10185同步于 2013/8/9
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Matlab机器人发帖
求教python调用matlib程序
moodyt
2013/8/9镜像同步3 回复
订阅后,新回复会通过你的通知中心匿名送达。