leoliu121 发表于 2020-3-29 16:41:29

还是不太明白参数传入到函数中是如何使用的。



大家好,我还是不太清楚参数是如何在函数中传递的。

这道题我可以这样理解吗?

相当于是这个函数return一个匿名函数,这个匿名函数只要传入参数就会乘以2。
当执行完double = repeat(2) 后,那double就变成了2 * s。
当执行print (double(8))时,就相当于执行了2 * 8,所以结果是16?
同理,当执行print (double("FishC"))时,就相当于执行力2 * “FishC”,所以打印出了“FishCFishC”?

谢谢大家。

BngThea 发表于 2020-3-29 16:42:42

理解对

zltzlt 发表于 2020-3-29 17:56:51

是的。make_repeat() 函数可以写成这样:

def make_repeat(n):
        def double(s):
                return s * n
        return double
页: [1]
查看完整版本: 还是不太明白参数传入到函数中是如何使用的。