最新回答 / 慕瓜5153805
fs.append(f)这里加到fs[]中的f是指向f()这个函数的对象,到f1,f2,f3 = count()这个语句执行时, 即为f1,f2,f3 = f(),但是此时for循环已经执行完成,i=3,此时调用函数f(),f1,f2,f3 = 9,9,9. 可参照前面一节,返回函数,了解一下f和f()的区别 而传入r的时候,r是具体的值,且每次循环时r的值都不同,故返回1,4,9.
2018-06-03
最新回答 / 慕前端3429475
前一节讲啦,@performance是用来测试性能的,性能一般也就是指函数运行的时间长短,这个题目要求测得是函数factoral的性能,所以调用这个函数前打印一个时间,调用后打印一个时间,相减就能得到这个函数的性能了。跟这个函数是实现什么的没有关系
2018-06-03
最新回答 / 慕前端3429475
加了@log你可以把
@log def factorial(n):当做log(factorial(n))酱紫,n就是作为函数factorial的参数传进去的呀
2018-05-30
最新回答 / 慕村5000538
你这样写不对哦,出错地方在r=f(i),因为这句话是直接把值传递给了r,而你在后面print时候是引用的函数。其次,j其实相当于i=1,2,3的传入。由于Python是动态语言,所以只有在真正执行的时候才会进行解释,那么如果在f里面直接传入了i,则在print 时候使用的是i=3,也就是最后的值。你可以把这count看成整个大的函数,而f,g函数是其内部的函数调用,fs和i当作局部变量。那么在使用的时候就相当于将i的值传参给g(此处i是实时的传入进去,并且保存了)。所以当print时候python解释时调...
2018-05-27
最新回答 / 慕勒322701
from functools import reduce def prod(x, y): return x * yprint (reduce(prod, [2, 4, 5, 7, 12]))python3版本,reduce在functools模块里,要引用它
2018-05-26