我的问题是特定于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
答案 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 )
德尔>