最赞回答 / 慕田峪2730464
在count函数里的循环只是定义了三个函数f,并把它们加入到fs列表中,最后count返回的是fs列表,运行f()执行的是 def f(): return i*i这段代码。此时由于i=3,故函数f1,f2,f3返回值均为9
2016-07-12
最新回答 / CuiYS
lazy_sum()相当于calc_prod(lst)的内部函数,所以calc_prod(lst)的形参lst相当于该函数内部的“全局变量”,在整个calc_prod(lst)函数范围内都是“可见的”,即lazy_sum()也是可以见到lst的,所以lazy_sum()可以直接使用lst。(我也是刚刚弄清楚这个问题,回答比较粗浅,希望见谅)
2016-07-12
已采纳回答 / 用户1097865
就像射箭一样,当长官命令士兵放箭的时候,士兵总要从箭囊拿出一只箭搭在弓弦上,然后再射出去。但现在长官的命令分成了两个,先拿箭,再放箭。定义lazy_prod()的作用就是使prod()的作用变成“拿箭”,调用lazy_prod()的时候再“放箭”。
2016-07-11
已采纳回答 / TracyCRI
感觉是x>y返回-1就是说当-1时,那么x就比y大 x<y返回1就是说当1时,那么x就比y小 x=y返回0就是说当0时,那么x就和y相等因此返回1 -1 0会对应不同的大小关系,这很明显就能进行排序了,而且x,y有个先后顺序,也不一定x>y就一定要返回-1,返回值都是自己定的。
2016-07-10