最赞回答 / 慕粉3321357
装饰器 ,和闭包 是有关系的, 有了闭包, 才会有装饰器. 闭包 其实 一个函数+ 自由的变量. 这个就是闭包 . 包含了自由变量的函数就是闭包. 装饰器,就是装饰一个函数的函数, 返回一个 函数对象. 可以看下 这个链接.闭包与装饰器简单概括
2018-05-20
最赞回答 / Mark_____
Python帮助文档中对sorted方法的讲解:sorted(iterable[,cmp,[,key[,reverse=True]]])作用:返回一个经过排序的列表。第一个参数是一个iterable,返回值是一个对iterable中元素进行排序后的列表(list)。可选的参数有三个,cmp、key和reverse。1)cmp指定一个定制的比较函数,这个函数接收两个参数(iterable的元素),如果第一个参数小于第二个参数,返回一个负数;如果第一个参数等于第二个参数,返回零;如果第一个参数大于第二个参数,...
2018-05-14
最赞回答 / 慕少9221509
在Python 3里,reduce() 函数已经被从全局名字空间里移除了,它现在被放置在fucntools 模块里使用前需要先引用: from functools import reduce
2018-05-09
最赞回答 / Mark_DUT
纯手打:以log函数为例(自己去看代码):理解:设一个函数g,此时调用log函数,g=log(f),f为乘积函数。那么请认真思考,g=?很简单,既然你调用了log函数,那么肯定等于log函数的返回值,也就是return后面的东西。g=fn。同样的道理,fn=?在内部函数可以看到,fn等价于一句print语句(先不要管他的内容)+一个return值fn=print+f(x)。那么f(x)=?f就是你自己拿过来用的,要代入的一个函数。也就是此题中的乘积函数。所以整个分析过程就像剥洋葱一样,从外部开始考察,g=...
2018-05-07
最赞回答 / 安若_殇
首先因为print该对象时调用的该对象的__str__方法,所以需要重写该方法,其次__str__方法需返回字符串数据,而此时self,numbers的类型是一个list,不能直接返回,所以又套了一个str函数转换成字符串再返回。
2018-05-05
最赞回答 / 晨济
init A...init C...init B...init D...(<class '__main__.D'>, <class '__main__.B'>, <class '__main__.C'>, <class '__main__.A'>, <class 'object'>)可以使用D.__mro__方法查看调用顺序,直到object结束,在调用过程中不会打印,因为还没有执行到,最后依次打印,也就是,这个调用反过来,ACBD。
2018-05-02