最新回答 / 慕移动9181930
你的代码没有问题,很正确啊sailbxpvawuzcvhgihsnuvmbjghxhvdxfbrxyiiwbzsxqmqbqmeffgqswgahpgehcwmlimbaoaddqhupqbywivdaxxprcjotzhawyhsotcyswgzxyntm
2017-02-23
最赞回答 / 可鲁苏Aurevoir
1. 注意区分 f1与f1(), f1等价于函数count,输入f1返回的结果是count函数,并没有实际调用这个函数,调用函数需要加括号,此时才开始运算2. 返回函数的作用之一是可以使计算延迟。上面列子里,在使用f1,f2,f3返回函数count时(f1, f2, f3 = count()),内层函数f()并没有被调用,所以实际并没有计算i x i。然而在这三次返回函数f1,f2,f3的过程中,i已经循环到了3,因此当真正开始调用函数f1()的时候,内层函数的计算已经由 3 x 3 开始。3. 综上所述...
2017-02-22
最赞回答 / 张良宇
for i in range(1, 4): def f(i): def g(): return i * i return g fs.append(f(i))1、老师的代码命名有问题。感觉都写成i第一个问题就比较清楚了,这两者本来指的就是同一个变量2、为什么这样就能取得正确结果呢?因为在这一部分中,在迭代的每一步中,f中的i确定了,g中的i也就由f的参数决定了。每一步得到的函数都是不同的函数(因为f的参数不...
2017-02-13
最新回答 / 苏阿
因为list['test', None, '', 'str', '
', 'END'] 中,有个特殊元素None(None是Python的特殊类型,它不支持任何运算) 如果像下面这样 <...code...>会报错误:AttributeError:
'NoneType' object has no attribu...
2017-02-12
最新回答 / 伸出圆手
额,filter这个函数的意义就在于把前面这个方法为true 的选出来,所以前面的函数的返回值只能为True或者False,return s的话肯定会报错的
2017-02-10