你如何在python中获得“matlab风格”函数输出

时间:2013-11-24 06:15:22

标签: python matlab numpy

我的问题是特定于matlab函数的第一行

function [a, b, c, d] = somefunction(arg1, arg2, arg3)
    % Some mangoes and pears
end

具体到那个平等的左边。这样matlab(我认为?)确保输出是那个向量。我知道在Python中你可以通过将计算结果汇总到一个数组中来实现同样的目的。有没有办法在python中获得这个“快捷方式”?这样的事情(但显然不是这样):

def somefunction(arg1,arg2,arg3) = [a, b, c, d]:
# some apples and bananas

1 个答案:

答案 0 :(得分:2)

在python(AFAIK)中,使用return命令定义返回值。

所以在Matlab中

function [a, b, c, d] = foo( a1, a2 )
% apples banabs, and most importantly assignment to outputs:
a = ...
b = ...
c = ...
d = ...
return;   % return has no arguments in Matlab

在python中:

def foo( a1, a2 ) :
    % apples bananas
    return a, b, c, d # outputs are defined here
<德尔> 如果您希望将输出作为tupple,则可以明确地执行此操作

    return ( a, b, c, d )