在MATLAB中可以做些什么“命令执行时间太长”错误?

时间:2011-06-09 20:07:57

标签: python matlab

我从MATLAB调用Python程序并将数组传递给程序。我在MATLAB工作区写了以下几行:

% Let us assume some random array

num1 = ones(1,100);   

% I am forced to pass parameters as string due to the MATLAB-Python interaction.

num2 = num2str(num1);    

% The function is saved in a Python program called squared.py

z=python('squared.py',num2);

num1的大小很小(例如100)时,程序可以正常工作。但是,当它很大时,例如500000,MATLAB显示以下错误:

??? Error using ==> dos
The command is too long to execute.

Error in ==> python at 68
[status, result] = dos(pythonCmd);

有谁知道如何修复此错误?

1 个答案:

答案 0 :(得分:8)

在Windows上,传递给dos函数的命令限制为32768个字符。此限制来自lpCommandLine参数对CreateProcess的Windows限制。

我认为Fredrik关于将数据写入文件并从Python读取数据的想法是您的最佳选择。