我试着去理解它。输出如何显示为"2“
def add_one(n):
return n+1
def my_function(n):
if n<5: return add_one(n)
else: return add_one(n-5)
my_function(my_function(10))发布于 2020-06-07 23:05:41
2是正确的输出。
首先计算外部my_function()的内部my_function(10)参数。自n > 5以来,add_one(10-5)给出了6。
然后是my_function(6)。仍然是n > 5,add_one(6-5)给了2。
记住,add_one()函数只是在n参数上加1
发布于 2020-06-07 22:57:09
首先,请使用代码标签。其次,你只需要想一想。
10不小于5,所以它会变成6,因为你减去5再加1。
6不小于5,所以它会变成2,因为你减去5再加1。
您正在调用该函数两次,因此输出为两次。
发布于 2020-06-07 22:58:41
您正在运行my_function(my_function(10))
首先求解my_function(10),my_function(10)将是add_one(5),它是6,现在计算my_function(6)是add_one(1),它是2
https://stackoverflow.com/questions/62247077
复制相似问题