我的MATLAB代码就像这样
function d = myFun1(a,b,c)
if nargin<3
c = myFun2(a,b)
end
d = a+b+c;
function c = myFun2(a,b)
c = a*b;
我的Python代码必须复制上面的内容,我错误地尝试过。
def myFun1(a,b, c=myFun2(a,b)):
d = a+b+c;
return d;
def myFun2(a,b):
c = a*b;
return c;
如何复制上述功能?
答案 0 :(得分:2)
关键字参数仅在此时进行评估,定义了函数。您必须使用标记并进行检查才能进行其他计算:
def myFun1(a, b, c=None):
if c is None:
c = myFun2(a, b)
d = a + b + c
return d