已采纳回答 / flagcn
因为虽然返回的参数分别是1,2,3,但这几个函数并没有计算,等到计算的时候(print f1, f2, f3...)i已经变成了3了,算以算出来都是9.
2016-03-22
最新回答 / 追魂月如弓
明白了,参考https://segmentfault.com/a/1190000000322433 这是一个python3版本中的一个改动造成,map()函数结果必须传入list封装一下才行。所以改进为:def f(x): return x*xprint (list(map(f, [1, 2 , 3, 4, 5, 6, 7, 8, 9])))执行结果:[1, 4, 9, 16, 25, 36, 49, 64, 81]请按任意键继续. . .
2016-03-22
最赞回答 / 魔luck
父类的初始化函数会先执行 ,最后才是 自己的初始化函数super(D, self).__init__(a)这句话,即先调用了 B C 的初始化,而B C 的初始化 又调用的 A 的 ,A的初始化有print 'init A...' 所以先输出 init A。 接下来 D 调用B C初始化那到底是先调用B 或者 C 呢?看这个class D(B, C),右边的参数先传入,即先调用了C。你可以试下B、C换下顺序 就明白了
2016-03-21
最新回答 / rsil
斐波拉契数列的定义,除了最开始的两个数0和1,后面的每个数都等于其前面两个数之和这里是以递归算法求斐波拉契数列中任意位置的数值 result = fib(9) + fib(8)表示第10个数等于第8个数和第9个数之和
2016-03-17
已采纳回答 / 123321_0015
a, b = b, a + b这个的含义是,a=b和b=a+b同时赋值的意思比如,当a=1,b=2 时,a, b = b, a + b赋值后,结果是a=2, b=3, 而不是a=2,b=4
2016-03-17