最新回答 / invain_
<...code...>你确定这是正确的语法?你确定“匿名函数中的p1 p2均是实例,并不是参数”是一个正确的概念?<...code...><...code...>是的,p3被排序了
2016-12-29
最赞回答 / Matthew_CQ
我还是推荐你下载一个集成开发环境,也就是IDE。软件叫做Pycharm。你运行后才知道你到底错在哪里。下面来看你的代码(基本语法错误):<...code...>好的,现在给你看看正确代码的逻辑(你...
2016-12-28
最新回答 / 慕粉1414027800
def calc_sum(lst): def lazy_sum(): return sum(lst) return lazy_sum注意: 发现没法把 lazy_sum 移到 calc_sum 的外部,因为它引用了 calc_sum 的参数 lst。像这种内层函数引用了外层函数的变量(参数也算变量),然后返回内层函数的情况,称为闭包(Closure)。闭包的特点是返回的函数还引用了外层函数的局部变量,所以,要正确使用闭包,就要确保引用的局部变量在函数返回后不能变。
2016-12-26
最新回答 / 西边
非常感谢!还有两个横向拓展的问题想问。直接内置函数可以直接调用,不用import,这样的函数还有哪些呢?reduce() map() sum()是math模块吧,python还有哪些常用的函数模块呢?
2016-12-25
已采纳回答 / lojzeli
看起来有很多错误:我想r=f()这一行的缩进应该错了,要再往前缩进一次;即使修改过来后,也有错误,f函数被循环定义了三次,运行可能不会出错,但不该这么写;count函数返回了一个有三个数的list,f1,f2,f3是具体的数字不是函数,print后面不应该带括号。正确代码:<...code...>
2016-12-24
已采纳回答 / 阎王老爷
第四行后面缩进字符有问题,可能多打了个空格,代码重新打一遍就好了def calc_prod(lst): def lazy_prod(): def f(x,y): return x*y return functools.reduce(f,lst,1) return lazy_prodf = calc_prod([1,2,3,4])print f()
2016-12-24
已采纳回答 / 乍回身
变量可以通过变量名访问。在指令式语言python中,引用变量通常是可变的。说白了,就是引用被你赋值的变量,你想要得到这个值,是通过这个变量访问的,就是类似于a = 1这种的至于引用,直接将变量放入结构式中就好,
2016-12-24