捕获Python的Matblab异常

时间:2015-06-24 07:11:43

标签: python matlab subprocess popen

从python脚本我使用'subprocess.Popen'调用Matlab(v2011B)函数。这是来自python的代码:

command = "matlab -nodisplay -nosplash -r -wait \"MyMatlabFunction(\'%s\',\'%s\'), exit\"" % (var1, var2)
args = shlex.split(command)
process = subprocess.Popen(args, stdout=subprocess.PIPE, stderr=subprocess.PIPE, cwd=pathScripts, shell=False)
stdout, stderr= procesoMatlab.communicate()
print stderr

在我的Matlab函数中,我有一个像这样的try-catch块:

try
    do myStuff
catch err
    fprintf(2, getReport(err))
end

关键是当我在Matlab上得到一个异常时,python子进程模块没有在'stderr'上收到任何值。

如何在python脚本中捕获Matlab异常/错误?

0 个答案:

没有答案