Matlab中是否有一个关键字大致等同于python中的None

我试图用它来标记一个函数的可选参数。我正在翻译以下Python代码

def f(x,y=None):
    if y == None:
        return g(x)
    else:
        return h(x,y)

进入Matlab
function rtrn = f(x,y)
    if y == []:
        rtrn = g(x);
    else
        rtrn = h(x,y);
    end;
end

如您所见,当前我正在使用[]作为None。有一个更好的方法吗?

最佳答案

在您的特定情况下。您可以使用nargin来确定调用函数时此处提供了多少个输入参数。

来自MATLAB documentation:


function c = testarg1(a, b)
     if (nargin == 1)
         c = a .^ 2;
     elseif (nargin == 2)
         c = a + b;
     end

关于python - Matlab相当于Python的 "None",我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1737523/

10-12 16:48
查看更多