一个入门自定义代码的解释请教(自定义函数的套嵌)
def add(x,y):
return x+y
def abb(abb,x,y):
return abb(abb(x,y),abb(x,y))
a=5
b=10
print(abb(add,a,b))
这段代码我研究了好久,始终不太明白其运行的合理解释,请不吝赐教!
def abb(abb, x, y)中的第一个abb是函数名, 第二个abb是函数的参数名;
return add(abb(x,y), abb(x,y))中的abb都是函数中的变量
当print(abb(add, a, b)), abb把三个参数(add, a, b)转换成(add, a, b), 所以
return abb(abb(x,y), abb(x,y)) 就变成
return add(add(a,b), add(a,b))
所以结果就是add(add(5, 10), add(5, 10) => 30